Что нового

Нажать на квадратик (галочка) на сайте

Crusaderman

Новичок
Сообщения
50
Репутация
0
Ребят финишная прямая... уже сделал все.. все поля и кнопки нажимаю, вбиваю, тайминг работает как надо.. создал даже интерфейс... пол дня убил, искал в коде вот такую какшку... квадратик по клику ставится галочка.
в личку кину ссылку на сайт. потом отпишусь решение и код чего искал.
 

Microteam

Осваивающий
Сообщения
74
Репутация
34
А вы слышали про такое: POST и GET запросы?

1. Определяем тип запроса:
В любой форме для отправки есть такой тег:
Код:
<form method="POST"></form>
Если POST то значит POST а дальше понятно...

2. Узнаем название полей, выглядеть могут так:
Код:
<input type="text" name="lol_lol" value="" />
Где name="" то что в кавычках это и есть имя, ну потом отсылаем запрос:


А отсылать запрос вот так:
Код:
$oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
;Отправляем POST запрос
$oHTTP.Open("POST",$url)
$oHTTP.setTimeouts(5000, 5000, 15000, 15000)
$oHTTP.SetRequestHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
$oHTTP.SetRequestHeader("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3")
$oHTTP.SetRequestHeader("Referer","http://smart-lab.ru")
$oHTTP.SetRequestHeader("Content-Type","text/html; charset=utf-8")
$oHTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; rv:6.0) Gecko/20100101 Firefox/6.0")
$oHTTP.SetRequestHeader("Host","вашсайт.ru")
$oHTTP.SetRequestHeader("Proxy-Connection", "Keep-alive")
$oHTTP.Send('lol_lol=ololo') ;; данные отсылать в формате свойтсво=значение если оно не одно то разделяйте знаком & например a=b&c=d
$oHTTP.WaitForResponse

$resp=$oHTTP.ResponseText

;; в переменной $resp содержится ответ от сервера)))


Ну эта тема эффективна, если нету капчи))) Так проще)))
 
Автор
C

Crusaderman

Новичок
Сообщения
50
Репутация
0
это все замечательно если знаешь где искать) а если ни поиском по контексту ни чем другим среди 5 тыс строчек ене можешь найти где эта мистическая кнопочка))
приблизительно догадываюсь но там нет ни чего типа он клик или подобное тупо найм айди и всякая фигня.
впринцепе решил проблему путем нажатия по координам. т.к у меня своя форма и мне пофиг на браузер и т.д...
вроде работает. НО терь мего проблема .. если сайт подвис то жмакает в холостую... ищу как проверять загрузку или что то подобное... пиксел серч уже точно не вариант сюда влетать... так как эта пэошка будет юзаться начальниками на разных операционках и разное разрешение и т.д.. для кажного писать своего бота не солидно
 

Microteam

Осваивающий
Сообщения
74
Репутация
34
А если перед кликом поставить
Код:
Sleep(5000)
ну чтобы подождала пока загрузиться сайт ???))
 
Автор
C

Crusaderman

Новичок
Сообщения
50
Репутация
0
еслиб так просто... изначальная задача
http://autoit-script.ru/index.php/topic,9396.0.html
в том и прикол что время может быть как 1с так и 2 мин и более...
нужно точное время знать так как у меня стоит таймин на каждое действие.
главная засада в том что ссайт виснит при заполнение формы а не только при переходи с странички на строничку
посути ЮРЛ один и тот же только от кликов юзеров происходит зависание


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

у меня есть такой фрагмент. я его искуственно перегружаю... чтоб он в завис ушел
вот моя задача чтоб это действие полностью отвисло и тока тогда кликать мышкой
Код:
Func _reis()
$good=0
$exit=0
  
    sleep(500)
for $t=1 to 120
$oSubmit = _IEGetObjById($oIE, "j_id250:0:j_id251:j_id294:0:j_id298:0:selectFlightButton") 
_IEAction($oSubmit, "click")
$z="Этап:2"

Next
if not @error then 
    	sleep(500)
	MouseClick("left", ($pos[0]+297),($pos[1]+160),1,0)
	Do
	Until $oIE.readyState=4
	MouseClick("left", ($pos[0]+645),($pos[1]+246),1,0)
	;ExitLoop
 EndIf
;if $t=1199 then $exit=1
;if $good = 1 then ExitLoop
sleep(100)

EndFunc

или может от моих дейтвий сходит с ума все)
 
Верх