Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Заполнение FORM в IE

Ответить
Настройки темы
[решено] Заполнение FORM в IE

Пользователь


Сообщения: 143
Благодарности: 24

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
#include <IE.au3>
$oIE = _IECreate ("http://i-jet.ru/forum/index.php")
$oForm = _IEFormGetCollection ($oIE, 0)
$oQuery = _IEFormElementGetCollection ($oForm, "vb_login_username")
_IEFormElementSetValue ($oQuery, "xaxa")
$oQuery_2 = _IEFormElementGetCollection ($oForm, "vb_login_password")
_IEFormElementSetValue ($oQuery_2, "123")
Не получается ввести значение 123 в поле пароля.
Спасибо.

Отправлено: 11:58, 15-07-2009

 

Аватара для beve

Старожил


Сообщения: 307
Благодарности: 137

Профиль | Отправить PM | Цитировать


Сравни и найди ошибки:
Код: Выделить весь код
#include <IE.au3>
$oIE = _IECreate ("http://i-jet.ru/forum/index.php")
$oForm = _IEFormGetCollection ($oIE, 0)


$oLogin = _IEFormElementGetCollection ($oForm, 0)
$oPass= _IEFormElementGetCollection ($oForm, 2)

_IEFormElementSetValue ($oLogin, "Login")
_IEFormElementSetValue ($oPass, "123")

_IELoadWait ($oIE)
_IEFormSubmit ($oForm)
Exit

-------
Не в кількості знань полягає освіта, а в повному розумінні і вмілому використанні того, що знаєш.

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:13, 15-07-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 143
Благодарности: 24

Профиль | Отправить PM | Цитировать


Спасибо.

Я правильно понимаю. Если форма не имеет имя то необходимо использовать индекс в этой функции: _IEFormGetCollection ($oIE, 0) [тут он 0, а может быть другим числом, к примеру 10], то при использовании след. функции: _IEFormElementGetCollection ($oForm, 0) нельзя использовать имя объекта как у меня в моем 'горе' примере.
А откуда узнать, что поле логин имеет index = 0, а поле пассворда имеет index = 2 ?

Отправлено: 13:34, 15-07-2009 | #3


Аватара для beve

Старожил


Сообщения: 307
Благодарности: 137

Профиль | Отправить PM | Цитировать


Цитата HORRIBLE:
А откуда узнать, что поле логин имеет index = 0, а поле пассворда имеет index = 2 ? »
$oForm (в примере) - указывает на форму где вводятся имя и пароль.
_IEFormElementGetCollection ($oForm, 0) - указывает на элемент на этой форме (в данном случае этот элемент первый в списке наявных элементов): 1 элемент будет иметь значение 0, второй - 1 и т.д. А узнать можна с помощью, например, DebugBar », где в списке форм будут описаны все присуствующие на странице формы (первая форма в списке будет иметь индекс - 0), а когда расскрыть конкретную форму и посмотреть из каких элементов она состоит, то появится список элементов на этой форме (первый элемент будет иметь индекс - 0)...

Можна найти нужный элемент на форме и по имени так:
Код: Выделить весь код
#include <IE.au3>
$oIE = _IECreate ("http://i-jet.ru/forum/index.php")
$oForm = _IEFormGetCollection ($oIE, 0)


$oLogin = _IEFormElementGetObjByName ($oForm, "vb_login_username")
$oPass = _IEFormElementGetObjByName ($oForm, "vb_login_password")

_IEFormElementSetValue ($oLogin, "Login")
_IEFormElementSetValue ($oPass, "123")

_IELoadWait ($oIE)
_IEFormSubmit ($oForm)
Exit

-------
Не в кількості знань полягає освіта, а в повному розумінні і вмілому використанні того, що знаєш.


Последний раз редактировалось beve, 15-07-2009 в 15:33.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:21, 15-07-2009 | #4


Пользователь


Сообщения: 143
Благодарности: 24

Профиль | Отправить PM | Цитировать


У меня стоит виста. Почему на ней все эти коды не работают и почти все примеры из справки тоже не работают.
Что бывает когда запускаешь выше приведенные коды:
1- открывается 2 окна ие (в одном грузится страничка по ссылке, а во втором ничего просто пытается к чему то подключиться)
2- а если написать $oIE = _IECreate ("http://i-jet.ru/forum/index.php", 0,0,0,1) ,то открывается одно окно ие в нем все грузится, но потом вылетает прога, ошибки:

C:\Program Files\AutoIt3\Include\IE.au3 (2547) : ==> The requested action with this object has failed.:
Return $o_object.document
Return $o_object.document^ ERROR

Это такая кривая виста или что то другое?

Отправлено: 12:58, 16-07-2009 | #5


Старожил


Сообщения: 186
Благодарности: 4

Профиль | Отправить PM | Цитировать


Цитата beve:
А узнать можна с помощью, например, DebugBar »
Подскажите, почему я установил DebugBar, а он не хочет отображать свою панель в IE 6 даже после нажатия вид - панели инструментов - DebugBar? Панель "гугл" отображает, а "дебагбар" не хочет.

Отправлено: 23:46, 10-09-2009 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Заполнение FORM в IE

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] KODA выдает текст кода формы и сама же его не может воспроизвести (Run form preview) evg64 AutoIt 3 30-09-2009 12:57
[решено] Заполнение формы на сайте, но с данными из текстового файла ZeroCrash AutoIt 2 24-06-2009 11:04
Интерфейс - [решено] Не показывается заполнение HDD JJKey Microsoft Windows Vista 2 20-06-2009 21:04
Разное - [решено] Почти полное заполнение MFT vov_cheek Microsoft Windows 2000/XP 8 20-11-2008 20:52
[решено] Заполнение таблицы БД (mysql+php) - прошу вашей помощи xkornx Вебмастеру 3 01-03-2008 16:04




 
Переход