|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как на Delphi нажать кнопку в гугл "Войти"?
Здравствуйте.
Буквально вчера начал знакомство с делфи.Создал форму,добавил кнопку button1.Никак не удаётся реализовать клик в мазиле. Нужно ли браузер на форму добавить?Подскажите полный код. Код:
for I := 0 to WebBrowser1.OleObject.Document.all.tags('input').length - 1 do begin try if (WebBrowser1.OleObject.Document.all.tags('input').item(i).value='Войти') then WebBrowser1.OleObject.Document.all.tags('input').item(i).click; except end; //----------------------------------- var a:variant; begin a:=webbrowser1.oleobject.document.getelementbyid('gb_70'); a.click; end; //---------------------------------- можно по классу gb_Vf gb_Ha gb_Eb //---------------------------------- Код вставляю в кнопку,выдаёт ошибку. Последний раз редактировалось Admin, 25.11.2017 в 20:20. |
#2
|
||||
|
||||
Цитата:
Код:
uses ShellAPI; procedure TForm1.Button1Click(Sender: TObject); const URL: string = 'https://accounts.google.com/ServiceLogin?' + 'hl=ru&passive=true&continue=http://www.google.ru/'; begin ShellExecute(0, 'open', pChar(URL), nil, nil, SW_SHOWNORMAL); end; Помогаю платно. Помогаю иногда бесплатно. |
#3
|
|||
|
|||
Про ссылку на кнопке знаю.Нужно методом id или class.
|
#4
|
||||
|
||||
Блок с поиском через айди работает, идентификатор кнопаря просто неверный, можно ведь было в html-исходнике товарища гугеля его и подсмотреть предварительно
Код:
procedure TForm1.Button1Click(Sender: TObject); var a: variant; begin a:= WebBrowser1.OleObject.Document.GetElementByID('gbi4s1'); a.Click; end; Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#5
|
|||
|
|||
Вот нашёл решение:
Создаём форму,добавляем 2 кнопки Button и WebBrauser(из вкладки интернет) Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtrls, SHDocVw, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; WebBrowser1: TWebBrowser; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin WebBrowser1.Navigate('www.yandex.ru'); //открываем яндекс end; procedure TForm1.Button2Click(Sender: TObject); var i:integer; s: String; html_tag: Variant; begin html_tag:= WebBrowser1.OleObject.Document.forms.item(0).elements; for i:=0 to (html_tag.Length-1) do begin if html_tag.item(i).name = 'login' then //ищем элемент с именем "login" html_tag.item(i).value:= 'delphi'; //и присваиваем ему значение if html_tag.item(i).name = 'passwd' then //ищем элемент с именем "passwd" html_tag.item(i).value:= 'delphi'; //и присваиваем ему значение if html_tag.item(i).value = 'Войти' then //ищем элемент со значением "Войти" html_tag.item(i).click; // и нажимаем на него end; end; end. Последний раз редактировалось sergeinovilozf, 26.11.2017 в 19:00. |
Этот пользователь сказал Спасибо sergeinovilozf за это полезное сообщение: | ||
Admin (26.11.2017)
|
#6
|
|||
|
|||
Всем спасибо за ответы.
|