Пишу парсер информации по аккаунту origin, нашёл простейший код по webbrowser, до парсинга инфы так и дело не дошло, в ступор на авторизации. Если заполнить поля, допустим на сайте маил ру, всё выходит и заходит, если же поменять ссылку и импуты из исходного кода страницы авторизации https://www.origin.com/ru/login то ничего не происходит. В чём может быть причина? Спасибо! unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtrls, SHDocVw; type TForm2 = class(TForm) WebBrowser1: TWebBrowser; Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form2: TForm2; implementation {$R *.dfm} procedure TForm2.Button1Click(Sender: TObject); begin webbrowser1.Navigate('https://www.origin.com/ru/login'); end; procedure TForm2.Button2Click(Sender: TObject); var html_taglevariant; i:integer; s:string; begin html_tag:=WebBrowser1.oleObject.Doc ument.forms.item(0).elements; for i:=0 to (html_tag.length -1) do begin if (html_tag.item(i).name = 'oauthbasiclogin') then html_tag.item(i).value:='почта от акка'; if (html_tag.item(i).name = 'oauthbasiclogin[password]') then html_tag.item(i).value:='пароль от акка'; if (html_tag.item(i).value='Вход') then html_tag.item(i).click; end; end; end.
Во-первых нужно код обрамлять BB кодами Code: ... Во-вторых, неужели проще пользоваться WebBrowser чем Indy? Дело конечно не моё. Воспользовавшись отладочной информацией понятно только то, что длина form - html_tag.length - равна нулю!!! Что мне делать скажите Вы. Ответ прост - HTTPAnalyzer + Indy запросы POST и GET в помощь) На мой взгляд это будет работать быстрее в 10 раз чем TWebBrowser.... Вот небольшой пост, не совсем по теме, но можно немного уловить суть и принцип ... а дальше по нарастающей - http://forum.antichat.ru/showpost.php?p=3280664&postcount=10 Вот еще http://forum.antichat.ru/showpost.php?p=3276933&postcount=138