Сейчас на форуме: 2nd, morgot, Rio, CDK123, zds, tyns777, tihiy_grom (+4 невидимых)

 eXeL@B —› Программирование —› Авторизация на сайте (Delphi)
Посл.ответ Сообщение

Ранг: 12.8 (новичок)
Активность: 0.010
Статус: Участник

Создано: 17 марта 2009 00:18 · Поправил: cvbnm87
· Личное сообщение · #1

Здраствуйте, помогите пожалуйста

Code:
  1. procedure TForm1.SpeedButton1Click(Sender: TObject);
  2. Var
  3. s,sres:string;
  4. Captcha:TMemoryStream;
  5. begin
  6. idHTTP1.Get('http://www.cproxy.com/Default.aspx?pg=13&lg=3');
  7. s:=idHTTP1.Get('http://www.cproxy.com/Default.aspx?pg=13&lg=3');
  8. sres:=copy(s,pos('ctl00_ContentPlaceHolderMain_ucRF_hidReg',s)+48,leng    th(s)-pos('ctl00_ContentPlaceHolderMain_ucRF_hidReg',s)+52);
  9. sres:=copy(sres,2,pos('/>',sres));
  10. sres:=copy(sres,1,length(sres)-4);
  11. s:=idHTTP1.Get('http://www.cproxy.com/Default.aspx?pg=13&lg=3');
  12. sres:=copy(s,pos('"ctl00_ContentPlaceHolderMain_ucRF_imgRegPol"',s)+50    ,length(s)-pos('"ctl00_ContentPlaceHolderMain_ucRF_imgRegPol"',s)+50);
  13. sres:=copy(sres,2,pos('" border',sres));
  14. sres:=copy(sres,1,length(sres)-2);
  15. captcha:=TMemoryStream.Create;
  16. idhttp1.Get('http://www.cproxy.com/'+sres,captcha);
  17. captcha.SaveToFile('captcha.png');
  18. Image1.Picture.LoadFromFile('captcha.png');
  19. end;
  20. procedure TForm1.SpeedButton2Click(Sender: TObject);
  21. Var
  22. tr : TstringList;
  23. begin
  24. tr:=TstringList.Create;
  25. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$hidReg='+.);
  26. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$txtRegEmail='+Edit1.Text);
  27. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$txtRegPol='+Edit2.Text);
  28. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$btnRegSubmit=Sign Up');
  29. idHTTP1.Post('http://www.cproxy.com/Default.aspx?pg=13&lg=3',tr);
  30.  
  31.  
  32.  
  33. end;
  34. end.


Объявить глобальные переменные как непомню, раньше я значения просто грузил в Edit, но регистрация непроходила, может не все inputы указал.



Ранг: 129.7 (ветеран), 2thx
Активность: 0.070
Статус: Участник

Создано: 17 марта 2009 00:58 · Поправил: Azur1d
· Личное сообщение · #2

1. Ну так объяви sres глобально, хотя это конечно не очень хороший стиль.
Code:
  1. var
  2. Form1: TForm1;
  3. sres: string

Или я неправильно тебя понял?

2. Подключи TIdCookieManager, большинство сайтов при запросе капци пишут что-то в куки
И кстати, ты читаешь капчу, а потом в форму ее не сабмитишь.



Ранг: 12.8 (новичок)
Активность: 0.010
Статус: Участник

Создано: 17 марта 2009 01:30 · Поправил: cvbnm87
· Личное сообщение · #3

Огромное спасибо что напомнили как переменную добавить, это я исправил, регится всё равно отказывается.



Ранг: 129.7 (ветеран), 2thx
Активность: 0.070
Статус: Участник

Создано: 17 марта 2009 03:36 · Поправил: Azur1d
· Личное сообщение · #4

Во-первых:
Code:
  1. idHTTP1.Get('http://www.cproxy.com/Default.aspx?pg=13&lg=3');
  2. s:=idHTTP1.Get('http://www.cproxy.com/Default.aspx?pg=13&lg=3');
  3. sres:=copy(s,pos('ctl00_ContentPlaceHolderMain_ucRF_hidReg',s)+48,leng  th(s)-pos('ctl00_ContentPlaceHolderMain_ucRF_hidReg',s)+52);
  4. sres:=copy(sres,2,pos('/>',sres));
  5. sres:=copy(sres,1,length(sres)-4);
  6. t:=(sres);
  7. s:=idHTTP1.Get('http://www.cproxy.com/Default.aspx?pg=13&lg=3');
  8. sres:=copy(s,pos('"ctl00_ContentPlaceHolderMain_ucRF_imgRegPol"',s)+50  ,length(s)-pos('"ctl00_ContentPlaceHolderMain_ucRF_imgRegPol"',s)+52);
  9. sres:=copy(sres,2,pos('" border',sres));
  10. sres:=copy(sres,1,length(sres)-2);
  11. captcha:=TMemoryStream.Create;
  12. idhttp1.Get('http://www.cproxy.com/'+sres,captcha);
  13. captcha.SaveToFile('captcha.png');
  14. Image1.Picture.LoadFromFile('captcha.png');
На кой два раза запрашивать одно и то же? капча-то меняется.

Во-вторых:Azur1d пишет:
2. Подключи TIdCookieManager, большинство сайтов при запросе капци пишут что-то в куки




Ранг: 25.1 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 17 марта 2009 05:17
· Личное сообщение · #5

cproxy практически мертв, слишком популяризовали в свое время сервис. вы делаете авторегалку (чтоб каждый триал самому не региться)?



Ранг: 12.8 (новичок)
Активность: 0.010
Статус: Участник

Создано: 17 марта 2009 13:52
· Личное сообщение · #6

RUNaum пишет:
чтоб каждый триал самому не региться

Да для этого, иногда приходится в инет выходить с мобилы, а эта прога трафик помогает неплохо экономить



Ранг: 12.8 (новичок)
Активность: 0.010
Статус: Участник

Создано: 17 марта 2009 19:16 · Поправил: cvbnm87
· Личное сообщение · #7

вот что получилось, TIdCookieManager кинул на форму и подключил, но всё равно не работает
Code:
  1. unit Unit1;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, StdCtrls, Buttons, ExtCtrls, IdBaseComponent, IdComponent,
  6.   IdTCPConnection, IdTCPClient, IdHTTP, ImgList, PngImageList,
  7.   IdCookieManager;
  8. type
  9.   TForm1 = class(TForm)
  10.     GroupBox1: TGroupBox;
  11.     SpeedButton1: TSpeedButton;
  12.     SpeedButton2: TSpeedButton;
  13.     Edit1: TEdit;
  14.     Edit2: TEdit;
  15.     Label1: TLabel;
  16.     Label2: TLabel;
  17.     Image1: TImage;
  18.     Bevel1: TBevel;
  19.     PngImageList1: TPngImageList;
  20.     IdHTTP1: TIdHTTP;
  21.     IdCookieManager1: TIdCookieManager;
  22.     procedure SpeedButton1Click(Sender: TObject);
  23.     procedure SpeedButton2Click(Sender: TObject);
  24.   private
  25.     { Private declarations }
  26.   public
  27.     { Public declarations }
  28.   end;
  29. var
  30.   Form1: TForm1;
  31.   t: string;
  32. implementation
  33. {$*.dfm}
  34. procedure TForm1.SpeedButton1Click(Sender: TObject);
  35. Var
  36. s,sres:string;
  37. Captcha:TMemoryStream;
  38. begin
  39. s:=idHTTP1.Get('http://www.cproxy.com/Default.aspx?pg=13&lg=3');
  40. sres:=copy(s,pos('ctl00_ContentPlaceHolderMain_ucRF_hidReg',s)+48,leng  th(s)-pos('ctl00_ContentPlaceHolderMain_ucRF_hidReg',s)+48);
  41. sres:=copy(sres,2,pos('/>',sres));
  42. sres:=copy(sres,1,length(sres)-4);
  43. t:=(sres);
  44. sres:=copy(s,pos('"ctl00_ContentPlaceHolderMain_ucRF_imgRegPol"',s)+50  ,length(s)-pos('"ctl00_ContentPlaceHolderMain_ucRF_imgRegPol"',s)+50);
  45. sres:=copy(sres,2,pos('" border',sres));
  46. sres:=copy(sres,1,length(sres)-2);
  47. captcha:=TMemoryStream.Create;
  48. idhttp1.Get('http://www.cproxy.com/'+sres,captcha);
  49. captcha.SaveToFile('captcha.png');
  50. Image1.Picture.LoadFromFile('captcha.png');
  51. end;
  52. procedure TForm1.SpeedButton2Click(Sender: TObject);
  53. Var
  54. tr : TstringList;
  55. begin
  56. tr:=TstringList.Create;
  57. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$hidReg='+t);
  58. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$txtRegEmail='+Edit1.Text);
  59. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$txtRegPol='+Edit2.Text);
  60. tr.Add('ctl00$ContentPlaceHolderMain$ucRF$btnRegSubmit=Sign Up');
  61. idHTTP1.Post('http://www.cproxy.com/Default.aspx?pg=13&lg=3',tr);
  62.  
  63. end;
  64. end.




Ранг: 6.6 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 18 марта 2009 12:46 · Поправил: StitCh_2007
· Личное сообщение · #8

cvbnm87, но всё равно не работает
Ты используй модуль при подгрузке капчи в image1 - PNGImage, просто png он не загрузит!
и запрос Post у тя не верный



Ранг: 12.8 (новичок)
Активность: 0.010
Статус: Участник

Создано: 18 марта 2009 16:20 · Поправил: cvbnm87
· Личное сообщение · #9

Капча у меня выводится, pngimage у меня подключён, что именно в post неправильно?



Ранг: 6.6 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 18 марта 2009 16:35 · Поправил: StitCh_2007
· Личное сообщение · #10

cvbnm87 пишет:
что именно в post неправильно?

Посмотри какие запросы с помощью HTTP Debugg
Проще сделай через TWebBrowser



Ранг: 12.8 (новичок)
Активность: 0.010
Статус: Участник

Создано: 18 марта 2009 20:01
· Личное сообщение · #11

StitCh_2007 пишет:
Проще сделай через TWebBrowser

Да уже взялся через инди делать, помучаюсь, если надоест буду через TWebBrowser делать


 eXeL@B —› Программирование —› Авторизация на сайте (Delphi)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати