2016-04-01 3 views
0

Я все еще работаю над этим проектом для своей работы, о котором я упомянул в предыдущих сообщениях. В принципе, я автоматизирую всю часть моей работы, связанную с компьютером, поэтому я могу сосредоточиться на аспектах рук.AutoIt - Автоматизация форм для Internet Explorer

В любом случае, я пытаюсь выяснить, как я могу точно заполнить форму на веб-странице в Internet Explorer. Кажется, что на веб-странице нет имен id или классов. Мой текущий метод выглядит неудобно и утомительно, если я хочу переместить его на несколько компьютеров. На данный момент я проверяю размер экрана в начале программы и используя кучу операторов if для перемещения мыши в относительное положение в зависимости от размера экрана. Учитывая, что компания, в которой я работаю, находится в двух странах с тысячами сотрудников, потребуется слишком много времени, чтобы выяснить все соответствующие перемещения мыши для каждого движения на каждом размере экрана. Некоторые люди даже имеют два или три монитора.

так что мой вопрос заключается в следующем:

Если веб-страница (внутренний сайт) не содержит классы/идентификаторов, есть способ для меня, чтобы определить местоположение HTML входов, текстовые полей, выпадающее меню падения падения, выбор даты и кнопки?

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

ответ

1

Вы можете перебирать все, например, input узлы, чтобы идентифицировать те, которые вам нужны

#include <IE.au3> 
$oIE = _IECreate("http://www.google.com") 
$oAs = _IETagnameGetCollection($oIE, "input") 
$i = 1 
For $oA in $oAs 
   _IEPropertySet($oA,"innertext",$i) 
   $i = $i + 1 
Next 

Далее вы можете использовать переменную $ я, чтобы установить правильные значения. В этом примере поле поиска Google является четвертым узлом input, поэтому вы можете заполнить этот узел таким образом:

#include <IE.au3> 
$oIE = _IECreate("http://www.google.com") 
$oAs = _IETagnameGetCollection($oIE, "input") 
$i = 1 
For $oA in $oAs 
   If $i = 4 Then _IEPropertySet($oA,"innertext","MyValue") 
   $i = $i + 1 
Next 
+0

Мои извинения. Это было, БЫЛО идеально. Он работает в том смысле, что он будет работать в практической ситуации. По какой-то причине это не работает для меня на внутреннем веб-сайте. (Интранет) Любые идеи? –

+0

Не могли бы вы поделиться (частью) HTML-кодом? –

Смежные вопросы