Имеется код, организующий авторизацию на mail.ru
Все поля заполняются верно, но на последнем этапе вход в ящик не происходит.
Помогите, плиз, поправить код. Если не сложно в двух словах объясните в чем проблема. Собственные усилия успехом не увенчались :(
Код:
#include <IE.au3>
Local $s_Url_Avtor = 'http://www.mail.ru/', $o_Form, $o_Login, $o_Pass, _
$o_Domain, $i_Error = 1, $s_LocUrl, $s_Text, $s_Domain, $a_Temp, _
$o_Obj, $s_Login, $s_Pass
$s_Login = '001_test_mail'
$s_Pass = 'q1w23e4r'
$s_Domain = 'mail.ru'
$o_Obj = _IECreate()
For $i = 1 To 1
_IENavigate($o_Obj, $s_Url_Avtor)
If @error Then ExitLoop
$s_Text = _IEBodyReadText($o_Obj)
If @error Then ExitLoop
; если оказались авторизованными, выходим из ящика
If StringInStr($s_Text, 'Написать письмо') Then
_IENavigate($o_Obj, 'https://r.mail.ru/cls1074201/auth.mail.ru/cgi-bin/logout?next=1&lang=ru_RU&Page=')
EndIf
$o_Form = _IEGetObjById($o_Obj, 'Auth')
If @error Then ExitLoop
$o_Login = _IEFormElementGetObjByName($o_Form, 'Login')
If @error Then ExitLoop
$o_Pass = _IEFormElementGetObjByName($o_Form, 'Password')
If @error Then ExitLoop
$o_Domain = _IEFormElementGetObjByName($o_Form, 'Domain')
If @error Then ExitLoop
_IEFormElementSetValue($o_Login, $s_Login)
If @error Then ExitLoop
_IEFormElementSetValue($o_Pass, $s_Pass)
If @error Then ExitLoop
_IEFormElementOptionSelect($o_Domain, $s_Domain, 1, 'byValue')
If @error Then ExitLoop
_IEFormSubmit($o_Form, 1)
If @error Then ExitLoop
_IELoadWait($o_Obj)
If @error Then ExitLoop
$s_LocUrl = _IEPropertyGet($o_Obj, 'locationurl')
If @error Then ExitLoop
If StringInStr($s_LocUrl, 'messages') Then
ConsoleWrite("Успешная авторизация" & @CRLF)
Else
ConsoleWrite("Нихрена не работает" & @CRLF)
EndIf
Next
Все поля заполняются верно, но на последнем этапе вход в ящик не происходит.
Помогите, плиз, поправить код. Если не сложно в двух словах объясните в чем проблема. Собственные усилия успехом не увенчались :(