Что нового

[Автоматизация] Заполнение поля в IE из блокнота

Автор
F

Fanatmb

Новичок
Сообщения
57
Репутация
0
Garrett [?]
формат файла - list_tel.txt
формат именно так и выглядит

[box title=Ответ]>"C:\Program Files (x86)\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "D:\Automatic\goip4-sms-robot.au3"
"D:\Automatic\goip4-sms-robot.au3" (9) : ==> "ExitLoop/ContinueLoop" statements only valid from inside a For/Do/While loop.:
If @error = -1 Then ExitLoop

>Exit code: 1 Time: 0.073[/box]


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

Вижу поправили... ошибка исчезла. смс пришла
 
Автор
F

Fanatmb

Новичок
Сообщения
57
Репутация
0
Garrett [?]
После перехода на sms_info.html скрипт вернулся на tools.html?
Загрузил заново страницу, запустил скрипт

смс отправилась с Line 1, а надо с Line 3(наверное надо сделать, что бы она кликала в опцию )
Код:
<INPUT onclick="toggle2('sms_send_tab', 8, 2)" CHECKED type=radio value=3 name=line>
после чего на странице sms_info.html и осталась.

Я сам это делаю на удаленке, может быть чего то не замечаю. :-\


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

Проверяю ещё. 1 смс приходит, но чувство такое, что на страницу sms_info.html не заходит, как будто бы она в фоновом режиме отрабатывается.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Fanatmb [?]
но чувство такое, что на страницу sms_info.html не заходит
Какое ещё чувство :smile:
Вы ведите в IE переход на страницу sms_info.html?

смс отправилась с Line 1, а надо с Line 3
Добавьте в код:
Код:
;...
$oSend = _IEFormElementGetObjByName ($oForm, "send")
_IEFormElementRadioSelect ($oForm, '3', 'line', 1, 'byValue') ; Добавьте
_IEFormElementSetValue ($oTelnum, $sTelnum)
;...
 
Автор
F

Fanatmb

Новичок
Сообщения
57
Репутация
0

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
А когда вы вручную отправляете, переходит на sms_info.html?
 
Автор
F

Fanatmb

Новичок
Сообщения
57
Репутация
0
Garrett [?]
А когда вы вручную отправляете, переходит на sms_info.html?
да


Страница с формой для отправки имеет вот такую ссылку tools.html?type=sms


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

Может там паузы нужны? Или скрипт выдерживает некоторое время время?

И что значит Sleep(250) - это так надо?
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Fanatmb
Попробуйте так, вместо
Код:
_IEAction($oSend, 'click')
в код Ответа№17 подставьте
Код:
_IEFormSubmit($oForm, 0)

и посмотрите, будет переход на sms_info.html или нет.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Ну, тогда давайте доступ к вашей панели, будем смотреть. Потому как я эмулирую у себя вашу панель, и у меня всё работает.
Или скачивайте полностью ваши страницы со скриптами, пакуйте и выкладывайте (на стороннем файлообменнике).
 
Автор
F

Fanatmb

Новичок
Сообщения
57
Репутация
0
Garrett [?]
Ну, тогда давайте доступ к вашей панели, будем смотреть. Потому как я эмулирую у себя вашу панель, и у меня всё работает.Или скачивайте полностью ваши страницы со скриптами, пакуйте и выкладывайте (на стороннем файлообменнике).
Garrett [?]

Что-то я сразу не дошел до этого. Через впн сейчас тестирую - работает. Супер!!!

А такой вопрос: Каким образом мне отслеживать сколько она отправила номеров?

Поскольку старт у этого скрипта в 9.00, финиш в 19.00.




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

видимо через тимвивер, я чего-то не видел.


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

Вот был такой сейчас ответ Line 3 Send Error: send, but provider not reply.

Я понимаю, это отчет о доставке не вернулся. Но программа остановилась.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Fanatmb [?]
Каким образом мне отслеживать сколько она отправила номеров?
Сделать логирование.

Вот был такой сейчас ответ Line 3 Send Error: send, but provider not reply.
На ответ Error: send, but provider not reply. нужно создать условие, и определить дальнейшие действия.
 
Автор
F

Fanatmb

Новичок
Сообщения
57
Репутация
0

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Код:
If Not @error And StringRegExp(_IEPropertyGet($oEl, 'innerText'), 'Send successful', 0) Then
	_IEAction($oBack, 'click')
	_IELoadWait($oIE)
	ConsoleWrite(StringFormat("! Send successful! %s\n", $sTelnum))
	ExitLoop
ElseIf Not @error And StringRegExp(_IEPropertyGet($oEl, 'innerText'), 'Can not get response from line', 0) Then
	_IEAction($oBack, 'click')
	_IELoadWait($oIE)
	ConsoleWrite(StringFormat("> Can not get response from line%s\n", '...'))
	ExitLoop
ElseIf Not @error And StringRegExp(_IEPropertyGet($oEl, 'innerText'), 'send, but provider not reply', 0) Then
	; Ваши дальнейшие действия
EndIf
 
Автор
F

Fanatmb

Новичок
Сообщения
57
Репутация
0
Код:
ElseIf Not @error And StringRegExp(_IEPropertyGet($oEl, 'innerText'), 'send, but provider not reply', 0) Then
            _IEAction($oBack, 'click')
            _IELoadWait($oIE)
            ConsoleWrite(StringFormat("> send, but provider not reply%s\n", '...'))
            ExitLoop


сделал вот так...

Приехал на место, где это делал по удаленке. и странно - но скрипт не работает. У меня дома молотит как шальной. И у меня и там Win7 x64, IE11


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

WinXP зверьСиДи, ИЕ8 - всё работает.

Логирование сделал так.
Код:
_FileWriteLog(@ScriptDir & "\sms-tel.log", $sTelnum)


Сталось научить скрипт не повторяться при повторном запуске и отрабатывать список до конца.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Fanatmb [?]
научить скрипт не повторяться при повторном запуске
В начале работы читаем INI файл настроек, в конце работы сохраняем настройки. Один из параметров, номер строки на которой остановились.

отрабатывать список до конца
Программа читает список до конца.

Проблемы с операционными системами понять не могу, так как проверить негде.
 
Верх