Як програмно клацнути на посилання в Internet Explorer
Існує Web-сторінка, завантажена в Internet Explorer, необхідно клацнути програмно на заздалегідь відоме посилання. Як це реалізувати?
←→ViktorZ (2005-11-06 19:04) [1]
А навіщо якщо не секрет, хочеш зробити накрутчик?
←→Volf_555 (2005-11-06 19:15) [2]
←→Volf_555 (2005-11-06 21:14) [3]
Ну так що може хтось допоможе вирішити мені дану проблему?
←→SergP. (2005-11-06 23:33) [4]
Якщо TWebbrowser, то можу підказати.
←→Volf_555 (2005-11-07 02:26) [5]
Допустимо в TWebBrowser - як здійснити тоді?
←→Volf_555 (2005-11-07 02:47) [6]
WrbBrowser1.Navigate(". ") не пропонувати :-)
Клікнути за посиланням:
←→SergP. (2005-11-07 08:41) [8]
Якщо з фреймами, то клікнути в i-му кадрі за j-им посиланням:
←→Volf_555 (2005-11-08 11:05) [9]
i – якого типу? Integer чи String?
Я пробував з integer
←→Volf_555 (2005-11-10 2:23) [11]
написав таке: WebBrowser1.OleObject.document.frames.item(0).document.all.tags("a").item(1).click Вилазить помилка: "Project1.exe raised exception class EOleException with message "Член групи не знайдений." Process stopped. Use Step or Run to continue."
←→Volf_555 (2005-11-10 2:45) [12]
SergP, наведи робочий приклад
> Volf_555 (10.11.05 2:23) [11] > написав таке: > WebBrowser1.OleObject.document.frames.item(0).document.all. > tags("a").item(1).clickВилазить помилка: > "Project1.exe raised exception class EOleException with > message "Член групи не знайдено". Process stopped. Use Step > або Run to continue."
ну правильно. Якщо у тебе в документі немає фреймів, або немає посилань (або потрібного посилання немає), або взагалі документ не завантажений, то й видаватиметься, що "Член групи не знайдено"
А як клацнути, а вірніше заповнити поле input якщо сторінка складається з кількох вкладених один одного фреймів?
Наприклад, на головній сторінці є два кадри, один для шапки, а інший для тіла документа. Але нижній кадр містить у собі сторінку, яка у свою чергу сама складається з кадрів.
Як дістатися до певного кадру? Я спробував виявити це практичним шляхом, але, на жаль, нічого не вийшло :(
procedure TForm1.Button8Click (Sender: TObject); frame1:=WebBrowser1.OleObject.document.frames.item(1); frame2:=frame1.document.all.tags("frame").item(i); frame2.document.all.tags("input").item(1).value:="HHHHHHHHHELLOOOOO"; except memo3.Lines.Add("у кадр номер "+inttostr(i)+" не підходить"); end; end; end;
> А як натиснути, а вірніше заповнити поле input якщо сторінка > складається з кількох вкладених один одного фреймів?
не знаю. Експериментувати немає часу. Але спробуй так:
procedure TForm1.Button8Click (Sender: TObject); frame1:=WebBrowser1.OleObject.document.frames.item(1); frame2:=frame1.document.frames.item(i);frame2.document.all.tags("input").item(1).value:="HHHHHHHHELLOOOOO" ; except memo3.Lines.Add("у кадр номер "+inttostr(i)+" не підходить"); end; end; end;
Можливо вийде.Але не гарантую
Ні не виходить :(
Може хтось знає рішення?