Что нового

[Элементы GUI] Клик по гиперссылкам через заданный промежуток времени?

Tapok

Новичок
Сообщения
204
Репутация
0
Версия AutoIt: 3.3.12.0
Описание: Как автоматически кликать по гиперссылкам через заданный промежуток времени?
Примечания:

Есть окно, в которое загружен html файл.
В нем есть гиперссылки (синий текст).
Ссылки вида:
Код:
<span ID="ACH-LINK" class="pic_ill\Name.jpg_name_Илл.1.Name" title="">илл. 1</span>

Как через заданный промежуток времени нажимать все ссылки подряд, двигаясь сверху вниз, слева направо по экрану?

Если html страница закончилась - клик мышью в заданной точке и по новой сканируем страницу (ту, что в данный момент на экране) и нажимаем гиперссылки.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Re: Как автоматически кликать по гиперссылкам через заданный промежуток времени?

Tapok,
[info border=#0000ff float=left]С такой постановкой вопроса Вам надо в Стол заказов.
Переоформите тему в соответствии с Правилами обязательного оформления тем в разделе "Стол заказов" и я ее туда перенесу.[/info]


Добавлено:
Сообщение автоматически объединено:

А если будете делать сами, то посмотрите эту тему: Работа с Internet Explorer Server в desktop-приложениях и в справке раздел IE Management.
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
Re: Как автоматически кликать по гиперссылкам через заданный промежуток времени?

Код:
$oLinks = _IETagNameGetCollection($oIE, "a")
If IsObj($oLinks) Then
	For $oLink In $oLinks
		_IEAction($oLink, "click")
		Sleep(10000)
	Next
EndIf
 
Автор
T

Tapok

Новичок
Сообщения
204
Репутация
0
alex33, спасибо, код работает для ссылки вида
Код:
<a...</a>
для моей ссылки почему-то код не работает. Заменил "a" на "span", но не помогло. Как можно увидеть все ссылки, которые "подхватываются" кодом
Код:
$oLinks = _IETagNameGetCollection($oIE, "a")

?
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Tapok [?]
Как можно увидеть все ссылки, которые "подхватываются" кодом
Код:
#include<IE.au3>

$oIE = _IECreate('http://autoit-script.ru')
$oLinks = _IETagNameGetCollection($oIE, 'a')
For $oLink In $oLinks
   ConsoleWrite(StringFormat('href: %s\n', $oLink.href))
Next
 
Автор
T

Tapok

Новичок
Сообщения
204
Репутация
0
А как быть, если у меня html страница находится в окне [CLASS:Internet Explorer_Server; INSTANCE:1]?

Код:
#include<IE.au3>

;$oIE = _IECreate('http://autoit-script.ru')

$oIE = WinWait("[CLASS:Internet Explorer_Server; INSTANCE:1]", "", 5)
$oLinks = _IETagNameGetCollection($oIE, 'a')
For $oLink In $oLinks
   ConsoleWrite(StringFormat('href: %s\n', $oLink.span))
Next


При таком коде выдается ошибка:
Код:
Variable must be of type "Object"

Что писать вместо
Код:
$oIE = _IECreate('http://autoit-script.ru')


Яндекс браузер, в котором я вижу эту страницу имеет Control:
Код:
[CLASS:Chrome_RenderWidgetHostHWND; INSTANCE:8]

Как искать ссылки в этом окне?
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
Код:
$oIE = _IEAttach("заголовок_окна", "dialogbox")
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Tapok [?]
А как быть, если у меня html страница находится в окне [CLASS:Internet Explorer_Server; INSTANCE:1]?

madmasles [?]
А если будете делать сами, то посмотрите эту тему: Работа с Internet Explorer Server в desktop-приложениях и в справке раздел IE Management.

Tapok [?]
Яндекс браузер, в котором я вижу эту страницу
UIAutomate - автоматизация нестандартных элементов GUI
 
Верх