Что нового

[Сеть, интернет] Проблема с входом на сайт

ZanMax

Тестер
Сообщения
120
Репутация
5
Всем привет.
Вот пишу скрипт и возникла проблема с авторизацией на сайте
Код:
#include <IE.au3>
#include <Date.au3>

$url = 'http://program.besida.ua/'
	$oIE = _IECreate($url)
	$oForm = _IEGetObjById($oIE, 'login-form')


Но мне выдает : --> IE.au3 V2.4-0 Warning from function _IEGetObjById, $_IEStatus_NoMatch (login-ok")

И как можно заполнить поле Логин, пароль и нажать кнопку "ОК"?

Логин:
Код:
<input type="text" alt="Телефон" class="placeholder inactive" name="login" title="">

Пароль:
Код:
<input type="password" alt="Пароль" class="placeholder" name="password" style="display: none; " title="">

Кнопка:
Код:
div class="save_butt" id="login-ok">
			;<a href="javascript:void(0);">OK</a>

Спасибо большое.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
ZanMax,
Дайте тестовые логин-пароль.
 

Nik_rus

Python The Snake.
Сообщения
214
Репутация
62
Код:
#include <IE.au3>
$oIE = _IECreate("http://program.besida.ua/")
$oForm = _IEGetObjById($oIE,"login-form")
$oLogin = _IEFormElementGetObjByName($oForm,"login")
_IEFormElementSetValue($oLogin,"logingoeshere")
$oPwd = _IEFormElementGetObjByName($oForm,"password")
_IEFormElementSetValue($oPwd,"passwordgoeshere")
_IEFormSubmit($oForm)
MsgBox(0,"Info",$oForm)
 
Автор
Z

ZanMax

Тестер
Сообщения
120
Репутация
5
Спасибо большое! Все заработало.
И еще вопрос.
Как в такое поле вводить данные:

Код:
<form method="get" action="/profile/checkCode" class="formAjax">
		<label>ввести код

			<div class="inf_add_name">
				<div class="left_input_field"></div>
				<div class="right_input_field"></div>
				<input type="text" name="code" id="code" title="">
			</div>
		</label>
		<input class="edit_profile_button" type="submit" value="Ok">
	</form>

Код:
$sForm = _IEGetObjById($oIE,"formAjax")  <---- // как найти эту форму?
$oCode = _IEFormElementGetObjByName($sForm,"code")
_IEFormElementSetValue($oCode,"123")


Спасибо всем!
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
У формы нет имени и id . Найти ее можешь через
Код:
_IEFormGetCollection
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
ZanMax,
Попробуйте так.
Код:
;...
$oForms = _IEFormGetCollection($oIE)
For $oForm In $oForms
	If StringInStr($oForm.action, '/profile/checkCode') Then
		$oCode = _IEFormElementGetObjByName($oForm, 'code')
		_IEFormElementSetValue($oCode, '123')
		_IEFormSubmit($oForm)
		ExitLoop
	EndIf
Next
;...
 
Верх