|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Автоизация на OLX.ua IDHTTP
Всем привет! С наступающими и прошедшими праздниками! Нужна помощь настоящих спецов Есть сайт OLX.ua- обычная доска объявлений. Есть программа, задача которой авторизация на сайте. Есть код программы:
Код:
procedure TForm1.Button2Click(Sender: TObject); var LoginInfo: TStringList; Response: TStringStream; g: string; begin try LoginInfo := TStringList.Create; Response := TStringStream.Create(''); LoginInfo.Add('login[email]=nokia8801@ukr.net'); LoginInfo.Add('login[password]=qwer14ccc'); LoginInfo.Add('login[remember-me]=on'); IdHTTP1.Post('http://olx.ua/myaccount/?ref[0][action]=myaccount&ref[0][method]=index',LoginInfo,Response); except on e:EIDHTTPPROTOCOLEXCEPTION do Memo1.Text := e.ErrorMessage; end; end; Далее подключив анализатор-снифер выясняю что обычный браузер делает один раз POST запрос- при этом получает куки с идентификатором пользователя (при этом результат 301), а затем GET на свой профиль, где куки не дублируются, но результат 200, а также получаем полноценную страничку с профилем пользователя. Что происходит у меня в случае с IDHTTP1: 15 раз повторяем POST запрос, каждый 3 POST получаем куки, но так как мы голодны, то продолжаем редиректить (перенаправляться), а потом GET тоже 15 раз с ответом 301. Естественно страничку с аккаунтом мне не возвращает. Я урезал редиректы (повторения) до 3 раз, на 3 раз получаю куки, но последующие GET запросы все равно заканчиваются провалом. В данном проекте использую coocie manager и ssl. Задача авторизоваться на сайте Olx.ua для последующего использования аккаунта. Буду очень признателен! |
#2
|
|||
|
|||
Добавь еще пост запрос на нажатие кнопки submit. А вообще лучше поставь http analyzer и просканируй все запросы при авторизации на сайт
|
#3
|
|||
|
|||
Дело в том что им и сканировал. В отличии от браузера, IDHTTP не собирается авторизовываться нормально. Допустим он получил ответ 301 и пытается авторизоваться заново, естественно сервер его кидает и только с 3-ей попытки он входит, но ему мало и он пытается дальше. Может кто попробует авторизоваться на OLX.ua? В долгу не останусь.
|
#4
|
||||
|
||||
Ручная обработка 301 кода точно поможет. Такое довольно часто случается и у Инди с этим проблемы.
Пишу программы за еду. __________________ |