Что нового

Какие функции из класса IE нужно рассмотреть для выполнения задачи??

kseniya

Новичок
Сообщения
21
Репутация
1
Всем, доброе утро!!
Подскажите, пожалуйста, какие функции из класса IE нужно рассмотреть для выполнения моей задачи!!
Задача такова: зайти на сайт www.mail.ru (это делаю с помощью IECreate)-->ввести username и password-->щелкнуть на кнопку войти-->щелкнуть на входящие-->выбрать письмо-->щелнуть ответ-->вести в форму для ответа текст-->елкнуть отправить!!
Я пока не могу разобраться в множестве функций IE!!


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

Задача сейчас мне видится непростой!!
Пробовала разобраться в том, что естть на сайте - очень много для меня не понятного!!
Может у кого есть скрит, который выполнет схожие действия(с пояснением, что данные скрипт выполняет).
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Код:
#include<IE.au3>
$sTextBody = "Привет Autoit!!!" ; текст сообщения
$sMsgTitle = "Be the First to Hear What's New!" ; заголовок письма

$oIE = _IECreate("http://mail.ru") ; открываем IE и переходим на сайт httр://mail.ru
$oForm = _IEFormGetObjByName($oIE, "Auth") ; находим форму "Auth"
$oLogin = _IEGetObjByName($oForm, "Login") ; находим элемент формы "Login"
$oPass = _IEGetObjByName($oForm, "Password") ; находим элемент формы "Password"
_IEFormElementSetValue($oLogin, "Логин") ; вставляем  Логин
_IEFormElementSetValue($oPass, "Пароль") ; вставляем Пароль
$oSelect = _IEFormElementGetObjByName($oForm, "Domain") ; находим элемент формы "Domain"
 _IEFormElementOptionSelect ($oSelect, "@mail.ru", 1, "byText") ; выбираем домен "@mail.ru, @inbox.ru, @bk.ru, @list.ru"
;~ _IEFormElementCheckboxSelect ($oForm, "1", "level", 1, "byValue") ; отмечаем checkbox [1 Чужой]
_IEFormElementCheckboxSelect ($oForm, "1", "level", 0, "byValue") ; отмечаем checkbox [0 Свой]
_IEFormSubmit($oForm,0) ; отправляем [0 - отключаем ожидание загрузки документа (у mail`а это связанно с фреймами)]

_IELoadWait($oIE) ; ждём загрузки документа

_IELinkClickByText($oIE,"Входящие") ; открываем папку "Входящие"
$oLinks = _IELinkGetCollection($oIE) ; получаем коллекцию ссылок

For $oLink In $oLinks ; перебираем коллекцию ссылок
	If StringInStr(_IEPropertyGet($oLink, "innerText"), StringStripWS($sMsgTitle, 3)) Then ; ищем текст заголовка письма
		_IEAction($oLink, "click"); открываем письмо
	EndIf
Next

_IELoadWait($oIE) ; ждём загрузки документа

$oForm = _IEFormGetObjByName($oIE, "FastAnswer") ; находим форму "FastAnswer"
$oTextArea = _IEFormElementGetObjByName($oForm,"Body") ; находим элемент формы "Body"
_IEFormElementSetValue($oTextArea, $sTextBody) ; вставляем текст письма
$oSend = _IEFormElementGetObjByName($oForm,"send") ; находим элемент формы "send" (кнопку)
;~ _IEAction($oSend, "click") ; ОТПРАВЛЯЕМ!!!
;~ и т.д. ...

Остальное, думаю, по ходу пьесы сообразите :smile:
 
Автор
K

kseniya

Новичок
Сообщения
21
Репутация
1
Огромное Вам спасибо!!!буду разбираться!!!!


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

А как мне определить название форма ("Auth",...), элемент формы ("Domain")? Открыть станицу через HTML - код??? и искать в коде?? :smile: :smile:
 
Автор
K

kseniya

Новичок
Сообщения
21
Репутация
1
Что-то там ничего нет типа <input type = "Text" .../>, <input type = "password" .../>
как определить ID объектов web - страницы??


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

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
kseniya [?]
А как мне определить название форма ("Auth",...), элемент формы ("Domain")? Открыть станицу через HTML - код??? и искать в коде??
Конечно! :smile:

[?]
Что-то там ничего нет типа <input type = "Text" .../>, <input type = "password" .../>как определить ID объектов web - страницы??
А вы внимательно смотрели?! ;)
[box title=HTML]<form style="overflow: hidden;" action="" method="post" name="Auth">

<img width="226" height="18" alt="" usemap="#logbms" src="">

<map id="logbmsid" name="logbms"><area name="cln6091" alt="Агент" href="" coords="109,1,220,18" shape="rect"><area alt="" nohref="nohref" shape="default"></map>

<table class="authorization" id="authorization_table">
<tbody><tr>
<td class="registration" colspan="2">
<a name="clb352156" tabindex="9" class="left" href="">Регистрация в почте</а>
<a tabindex="10" href=""><img width="14" height="14" class="right" alt="" src=""></а>
</td>
</tr>
<tr>
<td class="title1">Имя</td>
<td class="mail">
<table>
<tbody><tr>
<td class="login"><input type="text" value="" tabindex="3" name="Login" size="10" class="long"><div> </div></td>
<td class="domain"><select tabindex="4" class="long" name="Domain" size="1">
<option selected="selected" value="mail.ru">@mail.ru</option><option value="inbox.ru">@inbox.ru</option><option value="bk.ru">@bk.ru</option><option value="list.ru">@list.ru</option>
</select><div> </div></td>
</tr>
</tbody></table>
</td>
</tr>
<tr>
<td class="title2">Пароль</td>
<td class="pswd">
<div style="display: none;" class="tooltip" id="tooltipAuth_shell"><div class="tail" id="tooltipAuth_tail"></div><div class="ltc"></div><div class="rtc"></div><div class="ts"></div><div class="inner"><div class="rborder"><div class="mess" id="tooltipAuth_mess"><span id="tooltipAuth_mess_var">Вы вводите
русские буквы</span><span style="display: none;" id="tooltipAuth_mess_var2">Включен
Caps Lock</span><span style="display: none;" id="tooltipAuth_mess_var3">Пароль содержит
русские буквы</span></div><div class="struter" id="tooltipAuth_struter"></div></div></div><div class="lbc"></div><div class="rbc"></div><div class="bs"></div></div>
<table>
<tbody><tr>
<td><input type="password" value="" tabindex="5" name="Password" size="15" class="long"></td>
<td class="forget"><div><a tabindex="8" href="">Забыли?</а></div></td>
</tr>
</tbody></table>
</td>
</tr>
<tr>
<td class="title3"> </td>
<td class="button"><table><tbody><tr><td class="check"><input type="checkbox" class="check" value="1" name="level" tabindex="7" id="alien"></td><td style="white-space: nowrap;" class="bad"><label for="alien">Чужой компьютер</label></td><td class="submit"><input type="submit" style="width: 50px; text-align: center; padding: 0pt;" class="submit" tabindex="6" value="Войти"></td></tr></tbody></table></td>
</tr>
</tbody></table>

</form>[/box]
 
Автор
K

kseniya

Новичок
Сообщения
21
Репутация
1
:-[ по-видимому не очень внимательно...
:smile: и все же а как узнать ID объекта на странице???..это способ мне тоже интересен!
 
Автор
K

kseniya

Новичок
Сообщения
21
Репутация
1
:-[я не верно задаю вопрос!!!
как узнать номер формы на странице???
чтоб вместо имени или id указывать номер формы объекта?? :-\
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Код:
Dim $i
; ...
$oForms = _IEFormGetCollection($oIE)
For $i = 0 To @extended
    MsgBox(0, "", "Index: [" & $i & "]") ; индекс формы
    $i += 1
Next
; ...
 
Верх