Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Delphi. Авторизация в твиттере.

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Spy686



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У кого может есть рабочий код авторизации в twittere ?

Всего записей: 193 | Зарегистр. 17-12-2010 | Отправлено: 21:17 29-06-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Spy686
http://chuckbeasley.wordpress.com/2009/04/29/using-oauth-for-delphi/
ps: там myspace, но смысл не меняется - используется OAUTH
а вот и для twitter
http://chuckbeasley.com/index.php/2009/05/22/using-oauth-for-delphi-with-twitter/
 
+ https://code.google.com/p/oauth4delphi/
http://jamiei.com/blog/code/oauth-base-class-for-delphi/

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:39 29-06-2013 | Исправлено: Cheery, 21:41 29-06-2013
Spy686



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery спасибо. Ты как всегда прийдешь на помощь
 
Думаю может лучше не через API работать - Twitter как то подозрительно относиться к API запросам автоматизации аккаунта.
 
есть вариант авторизации:
http://codingpas.blogspot.ru/2011/08/delphi.html . Но хочу попробывать не через mobile.
 
превая ступень - спарсить страницу.
уперся в ошибку.
Could not load SSL library.
скачал какие-то библиотеки. т.е. есть файлы libeay32.dll и ssleay32.dll , но я с ними не знаю что делать. кидал туда сюда, но ничего.

Всего записей: 193 | Зарегистр. 17-12-2010 | Отправлено: 00:12 30-06-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Spy686

Цитата:
Twitter как то подозрительно относиться к API запросам автоматизации аккаунта.  

API для этого и создается, чтобы можно было автоматизировать.
 

Цитата:
но я с ними не знаю что делать. кидал туда сюда, но ничего.

в системную папку или в папку с exe

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 00:16 30-06-2013
Spy686



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:

Цитата:
Цитата:
но я с ними не знаю что делать. кидал туда сюда, но ничего.  

 
в системную папку или в папку с exe  

 
закинул и в  
Win32\Release\  
и в  
C:\Program Files (x86)\Embarcadero\RAD Studio\11.0\
и в
C:\Windows\System32\
 
непомогло

Всего записей: 193 | Зарегистр. 17-12-2010 | Отправлено: 11:37 30-06-2013
Spy686



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
Цитата:
 
Цитата:
Цитата:  
но я с ними не знаю что делать. кидал туда сюда, но ничего.  
 
 
в системную папку или в папку с exe  
 
 
закинул и в  
Win32\Release\  
и в  
C:\Program Files (x86)\Embarcadero\RAD Studio\11.0\  
и в  
C:\Windows\System32\  
 
непомогло

 
 
скачал
http://ru.originaldll.com/file/libeay32.dll/20035.html
http://ru.originaldll.com/file/ssleay32.dll/20037.html
Версия: 0.9.8h
 
и ошибка пропала
 
Добавлено:
код такой  
 

Код:
 
unit Bot;
 
interface
 
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.OleCtrls, SHDocVw, IdHTTP,
  IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdIOHandler,
  IdIOHandlerSocket, IdIOHandlerStack, IdSSL, IdSSLOpenSSL;
 
type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    login: TEdit;
    pass: TEdit;
    Button1: TButton;
    Button2: TButton;
    IdHTTP1: TIdHTTP;
    Memo1: TMemo;
    IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL;
    Memo2: TMemo;
    procedure Button2Click(Sender: TObject);
 
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
  auth_t: string; // хранится значение authenticity_token
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button2Click(Sender: TObject);
var
 data: TStringList;
get: String;
begin
get := IdHTTP1.get('https://twitter.com/');
 
auth_t := Copy(get, Pos('type="hidden" value="', get) + 21, 40);
  // Вытаскиваем значение authenticity_token
data := TStringList.Create;
 
  data.Add('authenticity_token=' + auth_t);
  data.Add('session[username_or_email]=' + login.Text);
  data.Add('session[password]=' + pass.Text);
  data.Add('remember_me=' + '1');
  data.Add('return_to_ssl]=' + 'true');
  data.Add('scribe_log=' + '');
  data.Add('redirect_after_login=' + '/');
 
 
 
  IdHTTP1.Post('https://twitter.com/', data);
 // Отправляем все параметры
  get := IdHTTP1.get('https://twitter.com/');
  memo1.Lines.Add(get);
  if Pos('logout', get) <> 0 then
  begin
    ShowMessage('Авторизовались удачно!');
    Button1.Enabled := False;
  end
  else
    ShowMessage('Авторизовались не удачно!');
// Проверяем авторизовались или нет
 
end;
end.
 

 
не работает

Всего записей: 193 | Зарегистр. 17-12-2010 | Отправлено: 20:14 30-06-2013 | Исправлено: Spy686, 22:24 30-06-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Spy686
используйте API, не нужно имитировать браузер.
 
к тому же форма (и ее поля) могут поменяться - API же останется тем же.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:53 01-07-2013
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Delphi. Авторизация в твиттере.


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru