Сейчас на форуме: zds, UniSoft (+6 невидимых)

 eXeL@B —› Программирование —› Ошибка HTTP
Посл.ответ Сообщение

Ранг: -0.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 07 октября 2012 21:18
· Личное сообщение · #1

Может кто подскажет. Уже всю голову сломал. В чем может быть проблема((( Не подрубается к проксям. В делфях выбивает это сообщение/ Новичек в этом. Пытаюсь разобраться


First chance exception at $76CDB9BC. Exception class EIdHTTPProtocolException with message 'HTTP/1.1 403 Forbidden'. Process Project1.exe (6280)

Code:
  1. procedure TForm1.BitBtn1Click(Sender: TObject);
  2.  var searchResult : TSearchRec;
  3.  begin   
  4.    Randomize;
  5.    if (TypeProxy<>0) then   
  6.     ProxyList.LoadFromFile(ExtractFilePath(Application.ExeName)+'proxy.txt');
  7.   
  8.    Follow:=CheckBox2.Checked;
  9.    Followname:=Edit2.Text;
  10.   
  11.    Avatar:=CheckBox1.Checked;
  12.    Description:=CheckBox4.Checked;
  13.    if Description then   
  14.     begin   
  15.      Location:=LabeledEdit1.Text;
  16.      Site:=LabeledEdit2.Text;
  17.      About:=LabeledEdit3.Text;
  18.     end;
  19.   
  20.    ProxyGlob:=-1;
  21.    AssignFile(Accounts,ExtractFilePath(Application.ExeName)+'accounts.txt');
  22.   
  23.    NameList.Clear;
  24.    NameList.LoadFromFile(ExtractFilePath(Application.ExeName)+'name.txt');
  25.   
  26.    if CheckBox1.Checked then   
  27.     begin   
  28.      Avatar:=true;
  29.      AvatarList.Clear;
  30.      if FindFirst('avatars\*.*', faAnyFile, searchResult) = 0 then   
  31.       begin   
  32.        repeat   
  33.         if (searchResult.Name<>'..') and (searchResult.Name<>'.') then   
  34.          AvatarList.Add(searchResult.Name);
  35.        until FindNext(searchResult)<>0;
  36.       end;
  37.      if AvatarList.Count=0 then   
  38.       begin   
  39.        Avatar:=false;
  40.        CheckBox1.Checked:=false;
  41.       end;
  42.     end   
  43.    else Avatar:=false;
  44.   
  45.    TCheckThread.Create(false);
  46.  end;
  47.   
  48.  procedure TCheckThread.Execute;
  49.  var HTTP: TIdHTTP;
  50.       IdSocksInfo: TIdSocksInfo;
  51.       IdSSLIOHandlerSocketOpenSSL: TIdSSLIOHandlerSocketOpenSSL;
  52.       ProxyLoc:integer;
  53.       Page,Page2,fcaptcha,twname, twpass,twfullname:string;
  54.       s:utf8string;
  55.       multi: Tidmultipartformdatastream;
  56.       error:boolean;
  57.       Data: TStringList;
  58.       MS:TMemoryStream;
  59.       pic: TGifImage;
  60.       ftp: TIdFTP;
  61.   
  62.  begin   
  63.  ftp:=TIdFTP.Create;
  64.    while true do   
  65.    begin   
  66.     second:=false;
  67.     Http := TIdHTTP.Create(nil);
  68.     Http.AllowCookies:=true;
  69.     with Http.Request do   
  70.     begin   
  71.      UserAgent:='Opera/9.80 (Windows NT 6.0; U; ru) Presto/2.2.15 Version/10.10';
  72.      Accept:='text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1';
  73.      AcceptLanguage:='ru-RU,ru;q=0.9,en;q=0.8';
  74.      AcceptCharset:='windows-1251, utf-8, utf-16, *;q=0.1';
  75.      ContentType:='application/x-www-form-urlencoded';
  76.     end;
  77.     HTTP.HandleRedirects:=false;
  78.     Http.ConnectTimeout:=30000;
  79.     Http.ReadTimeout:=30000;
  80.     HTTP.OnStatus:=form1.IdHTTP1Status;
  81.     IdSocksInfo:= TIdSocksInfo.Create;
  82.     IdSSLIOHandlerSocketOpenSSL:= TIdSSLIOHandlerSocketOpenSSL.Create(http);
  83.     HTTP.IOHandler:=IdSSLIOHandlerSocketOpenSSL;
  84.   
  85.    CS.Enter;
  86.     if (TypeProxy<>0) then   
  87.      begin   
  88.       inc(ProxyGlob);
  89.       if ProxyGlob>=ProxyList.Count then ProxyGlob:=0;
  90.       ProxyLoc:=ProxyGlob;
  91.       Form1.Memo1.Lines.Add('Используем прокси: '+ProxyList[ProxyLoc]);
  92.       if TypeProxy=1 then   
  93.        begin   
  94.         HTTP.ProxyParams.ProxyServer:=Copy(ProxyList[ProxyLoc],1,Pos(':',ProxyList[ProxyLoc])-1);
  95.         HTTP.ProxyParams.ProxyPort:=StrToInt(Copy(ProxyList[ProxyLoc],Pos(':',ProxyList[ProxyLoc])+1,Length(ProxyList[ProxyLoc])-Pos(':',ProxyList[ProxyLoc])));
  96.        end   
  97.       else if TypeProxy=2 then   
  98.        begin   
  99.         IdSocksInfo.Version:=svSocks4;
  100.         IdSocksInfo.Host:=Copy(ProxyList[ProxyLoc],1,Pos(':',ProxyList[ProxyLoc])-1);
  101.         IdSocksInfo.Port:=StrToInt(Copy(ProxyList[ProxyLoc],Pos(':',ProxyList[ProxyLoc])+1,Length(ProxyList[ProxyLoc])-Pos(':',ProxyList[ProxyLoc])));
  102.         IdSocksInfo.Authentication:= saNoAuthentication;
  103.         IdSSLIOHandlerSocketOpenSSL.TransparentProxy:=IdSocksInfo;
  104.         HTTP.IOHandler:=IdSSLIOHandlerSocketOpenSSL;
  105.         IdSSLIOHandlerSocketOpenSSL.ConnectTimeout:=30000;
  106.         IdSSLIOHandlerSocketOpenSSL.ReadTimeout:=30000;
  107.        end   
  108.       else   
  109.        begin   
  110.         IdSocksInfo.Version:=svSocks5;
  111.         IdSocksInfo.Host:=Copy(ProxyList[ProxyLoc],1,Pos(':',ProxyList[ProxyLoc])-1);
  112.         IdSocksInfo.Port:=StrToInt(Copy(ProxyList[ProxyLoc],Pos(':',ProxyList[ProxyLoc])+1,Length(ProxyList[ProxyLoc])-Pos(':',ProxyList[ProxyLoc])));
  113.         IdSocksInfo.Authentication:= saNoAuthentication;
  114.         IdSSLIOHandlerSocketOpenSSL.TransparentProxy:=IdSocksInfo;
  115.         HTTP.IOHandler:=IdSSLIOHandlerSocketOpenSSL;
  116.         IdSSLIOHandlerSocketOpenSSL.ConnectTimeout:=30000;
  117.         IdSSLIOHandlerSocketOpenSSL.ReadTimeout:=30000;
  118.        end;
  119.      end;
  120.     Form1.Memo1.Lines.Add('Запрос страницы регистрации');
  121.     CS.Leave;
  122.      error:=false;
  123.     try   
  124.      Page:=Http.Get('https://mobile.twitter.com/signup');
  125.     except   
  126.      error:=true;
  127.      CS.Enter;
  128.      Form1.Memo1.Lines.Add('Ошибка запроса');
  129.      CS.Leave;
  130.     end;
  131.      Form1.Memo1.Lines.Add('запрос выполнен');
  132.     if not(error) then   
  133.      begin   
  134.       CS.Enter;
  135.       Form1.Memo1.Lines.Add('Запрос каптчи');
  136.       CS.Leave;
  137.       fcaptcha:=pars('name="captcha_challenge_field" value="',Page,'"');
  138.       MS:=TMemoryStream.Create;
  139.       try   
  140.        HTTP.Get('https://mobile.twitter.com/signup/captcha/'+fcaptcha+'.gif',MS);
  141.       except   
  142.        error:=true;
  143.        CS.Enter;
  144.        Form1.Memo1.Lines.Add('Ошибка запроса капчи');
  145.        CS.Leave;
  146.   
  147.       end;





Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 07 октября 2012 23:18
· Личное сообщение · #2

И при чём тут дельфи и этот форум? А прокся тебе как бэ намекает, что 403.


 eXeL@B —› Программирование —› Ошибка HTTP
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати