Что нового

[Сеть, интернет] _IELinkGetCollection - Как правильно найти элемент и нажать на него.

Dream-52

...
Сообщения
82
Репутация
1
Ребята,прошу уточнения в следуюущем :

Код:
_IEFormSubmit($oForm, 1)         ; вместо этого


Код:
$oLinks = _IELinkGetCollection ($oForm)
For $oLink In $oLinks
    If $oLink.type == "submit" Then _IEAction ($oLink, "click")
    ExitLoop
Next



Это просто кнопка входа,но хочется ее нажать именно таким методом...
 
Автор
D

Dream-52

...
Сообщения
82
Репутация
1
Чтото я уже совсем запутался как нужно кнопки нажимать,мне нужно именно по атрибуту class,name,type и т.д.....
 

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
157
Ошибка:
ExitLoop должен выполняться внутри оператора If.
А выходит, что ExitLoop выполняется сразу же, после проверки 1-го элемента из найденной коллекции.

Пример:
Код:
#include <IE.au3>
$oIE = _IECreate('http://autoit-script.ru/index.php')
$oLinks = _IELinkGetCollection($oIE)
For $oLink In $oLinks
    If $oLink.name == 'b4' Then
		MsgBox(64, 'Внимание', 'Ссылка найдена' &@CRLF& 'Текст: ' &@TAB& $oLink.innerhtml &@CRLF& 'href: ' &@TAB& $oLink.href &@CRLF& 'name: ' &@TAB& $oLink.name)
		_IEAction($oLink, 'click')
		ExitLoop
	EndIf
Next
 
Автор
D

Dream-52

...
Сообщения
82
Репутация
1
`p r o x y сказал(а):
Ошибка:
ExitLoop должен выполняться внутри оператора If.
А выходит, что ExitLoop выполняется сразу же, после проверки 1-го элемента из найденной коллекции.

Пример:
Код:
#include <IE.au3>
$oIE = _IECreate('http://autoit-script.ru/index.php')
$oLinks = _IELinkGetCollection($oIE)
For $oLink In $oLinks
    If $oLink.name == 'b4' Then
		MsgBox(64, 'Внимание', 'Ссылка найдена' &@CRLF& 'Текст: ' &@TAB& $oLink.innerhtml &@CRLF& 'href: ' &@TAB& $oLink.href &@CRLF& 'name: ' &@TAB& $oLink.name)
		_IEAction($oLink, 'click')
		ExitLoop
	EndIf
Next
Спасибо.... невнимательность - мой конек :(
 

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
157
Tommy Dreams
Предупреждение За нарушение общих правил (пункт В.2):
Старайтесь избегать “Over quoting” (преувеличенное цитирование) - цитируйте только необходимую часть сообщения, которая наилучшим образом подчеркнёт суть цитируемого.


С уважением, Модератор форума.




[info border=#0000ff float=left]На форуме принято помечать тему решенной после получения ответа на свой вопрос!
Вверху или внизу темы нажмите на ссылку такого вида:
Тема не решена
[/info]
 
Автор
D

Dream-52

...
Сообщения
82
Репутация
1
Код:
$oLinks = _IELinkGetCollection($oIE)
For $oLink In $oLinks
    If $oLink.type == 'submit' Then
        MsgBox(64, 'Внимание', 'Ссылка найдена' &@CRLF& 'Текст: ' &@TAB& $oLink.innerhtml &@CRLF& 'href: ' &@TAB& $oLink.value &@CRLF& 'name: ' &@TAB& $oLink.type)
        _IEAction($oLink, 'click')
        ExitLoop
    EndIf
	MsgBox(16,'','')
Next
Exit


Все равно не получается..

Кнопка по-ходу вот :

<INPUT accessKey=s class=button title="Enter your username and password in the boxes provided to login, or click the 'register' button to create a profile for yourself." tabIndex=104 value="Log in" type=submit>
 

madmasles

Модератор
Глобальный модератор
Сообщения
7 790
Репутация
2 319
Tommy Dreams
Попробуйте поменять
Код:
;...
$oLinks = _IELinkGetCollection($oIE)
; на
$oLinks = _IETagNameGetCollection($oIE, 'input')
;...
 

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
157
Tommy Dreams [?]
<INPUT accessKey=s class=button title="Enter your username and password in the boxes provided to login, or click the 'register' button to create a profile for yourself." tabIndex=104 value="Log in" type=submit>
Это не ссылка - это кнопка.
Искать нужно кнопку! madmasles, верно написал.
 
Автор
D

Dream-52

...
Сообщения
82
Репутация
1
madmasles сказал(а):
Tommy Dreams
Попробуйте поменять
Код:
;...
$oLinks = _IELinkGetCollection($oIE)
; на
$oLinks = _IETagNameGetCollection($oIE, 'input')
;...
Единственно,что не понятно - откуда Вы берете 'input' ?
 

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
157
Tommy Dreams
А какой HTML элемент ищите на странице?
 

Garrett

Модератор
Локальный модератор
Сообщения
3 999
Репутация
964
Tommy Dreams [?]
Единственно,что не понятно - откуда Вы берете 'input' ?
Это тег <input> который формирует на странице именно те самые кнопки!

Имеет следующие:
[box title=Aтрибуты]accept - Устанавливает фильтр на типы файлов, которые вы можете отправить через поле загрузки файлов.
accesskey - Переход к элементу с помощью комбинации клавиш.
align - Определяет выравнивание изображения.
alt - Альтернативный текст для кнопки с изображением.
border - Толщина рамки вокруг изображения.
checked - Предварительно активированный переключатель или флажок.
disabled - Блокирует доступ и изменение элемента.
maxlength - Максимальное количество символов разрешенных в тексте.
name - Имя поля, предназначено для того, чтобы обработчик формы мог его идентифицировать.
readonly - Устанавливает, что поле не может изменяться пользователем.
size - Ширина текстового поля.
src - Адрес графического файла для поля с изображением.
tabindex - Определяет порядок перехода между элементами с помощью клавиши Tab.
type - Сообщает браузеру, к какому типу относится элемент формы.
value - Значение элемента.[/box]

Атрибут type сообщает форме, как обрабатывать кнопку.
type="submit" - говорит о том, что эта кнопка отправляет на сервер все данные, введённые в форме.
 
Верх