![]() |
|
#1
|
|||
|
|||
![]() Всем привет! Довольно интересная тема - это отправка сообщений авторам объявлений на OLX.ua. Проблема состоит лишь в том что картинка капчи формируется при помощи ссылки http://olx.ua/captcha/ , где в ответе получаем просто картинку. Пытаюсь реализовать это программно с помощью IdHTTP1. Для этого делаю GET запрос на объявление. За тем делаю запрос/выгрузку капчи, за тем отправляю в виде данных:
Код:
LoginInfo := TStringList.Create; Response := TStringStream.Create(''); LoginInfo.Add('contact[email]='); LoginInfo.Add('contact[txt]=99999999999999999999999999999999999999999999999999'); LoginInfo.Add('attachment[0]='); LoginInfo.Add('contact[captcha]='+capcha.Text); Кстати авторизацию я делаю спокойно и отправляю сообщения авторам до появления капчи элементарно. Но с капчей отправлять не хочет. В чем может быть дело? Ниже приведу коды кнопок. Код:
procedure TForm1.BitBtn1Click(Sender: TObject); begin IdHTTP1.Get('http://olx.ua/obyavlenie/iphone-3gs-32gb-white-neverlock-IDiz7yq.html'); end; Код:
procedure TForm1.BitBtn2Click(Sender: TObject); begin Fileload('http://olx.ua/captcha/', 7); //g:=idHTTP1.Get('http://olx.ua/obyavlenie/iphone-3gs-32gb-white-neverlock-IDiz7yq.html'); //Идем на страничку //LoginInfo := TStringList.Create; //Response := TStringStream.Create(''); //LoginInfo.Add('contact[email]='); //LoginInfo.Add('contact[txt]=88888888888888888888888888888888888'); //LoginInfo.Add('attachment[0]='); //IdHTTP1.Post('http://olx.ua/obyavlenie/iphone-3gs-32gb-white-neverlock-IDiz7yq.html',LoginInfo,Response); //g:=utf8toansi(Response.DataString); //if pos('введён', g)<>0 then begin // showmessage('Не верно введен код'); // fileload('http://olx.ua/captcha/', 7); //end; end; Код:
procedure TForm1.BitBtn3Click(Sender: TObject); var cap: string; LoginInfo: TStringList; Response: TStringStream; g: string; begin LoginInfo := TStringList.Create; Response := TStringStream.Create(''); LoginInfo.Add('contact[email]='); LoginInfo.Add('contact[txt]=99999999999999999999999999999999999999999999999999'); LoginInfo.Add('attachment[0]='); LoginInfo.Add('contact[captcha]='+capcha.Text); //IdHttp1.Request.Host:=('olx.ua'); //IdHttp1.Request.UserAgent:=('Mozilla/5.0 (Windows NT 6.1; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0'); //IdHttp1.Request.Referer:=('http://olx.ua/obyavlenie/iphone-3gs-32gb-white-neverlock-IDiz7yq.html'); //IdHttp1.Request.Accept:=('image/png,image/*;q=0.8,*/*;q=0.5'); //IdHttp1.Request.AcceptLanguage:=('ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3'); //IdHttp1.Request.AcceptEncoding:=('gzip, deflate'); //IdHttp1.Request.Connection:=('keep-alive'); //IdHttp1.Request.CacheControl:=('max-age=0'); IdHTTP1.Post('http://olx.ua/obyavlenie/iphone-3gs-32gb-white-neverlock-IDiz7yq.html',LoginInfo,Response); end; |