Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Дождаться выполнения скрипта. [D7]


Страницы:   1 2 3

Mach3 ©   (2011-11-01 08:20:00) 

Привет. Пытаюсь загрузить страничку, кликнуть по "кнопке" и после получить нужный контент. Но как дождаться окончания выполнения Java скрипта не знаю.
WebBrowser1.Navigate(' http://www.ru');

while WebBrowser1.ReadyState <> READYSTATE_COMPLETE do
   Application.ProcessMessages;
WebBrowser1.OleObject.Document.getElementByID('show_contacts').click;

S:= WebBrowser1.OleObject.Document.getElementByID('show_contacts').innerHTML;


Необходимо, чтобы в S содержалось значение после выполнения скрипта..


Mach3   (2011-11-03 06:24:00) [1]

=))))))))))))))
Всем спасибо..


Омлет   (2011-11-01 18:10:00) [2]

Странную, однако, "защиту" придумал камрад Кирилл Ковальчук..
А найдя эту ветку по логам с сервера, он "защиту" сделает ещё странней ))


Медвежонок Пятачок   (2011-11-01 18:00:00) [3]

заголовки разные.
сервер ничего кроме заголовков не получает и не может ни по чему иному определить что у него тянут номера телефонов.


Омлет   (2011-11-01 17:59:00) [4]

Оказалось, что параметр "_" реально не нужен, он, наверное, только для защиты от кэширования.

Обязательно должны быть два поля в заголовке:

X-Requested-With XMLHttpRequest
Referer   http://ussuriisk.drom.ru/toyota/succeed/6054110.html


Тогда возвращает верный номер и не требует капчу. Проверял с помощью плагина HttpRequester к фаерфоксу.


Mach3   (2011-11-01 17:23:00) [5]

так ведь вроде уже определились, что заголовки одинаковые..
остается только неопознанный параметр ("_")


Медвежонок Пятачок   (2011-11-01 17:11:00) [6]

какое еще-то решение?

заголовок надо чтобы был такой же как при аяксе.
у сервера больше нет никаких средств чтобы понять, что его обманывают


Mach3   (2011-11-01 17:03:00) [7]

Если есть еще идеи- буду рад читать..
Решение с TWebBrowser нашел, но хотелось бы сэмулировать запрос.


Mach3   (2011-11-01 16:50:00) [8]


> Но, подозреваю, что именно по первому параметру ("_")

Тоже так думаю..


Mach3   (2011-11-01 16:49:00) [9]

пробовал удалить все куки из браузер и отключить их получение.
результата не дало.. номер отображался правильно.


Омлет   (2011-11-01 16:48:00) [10]

Там, действительно, есть какая-то защита.
И на некоторых страницах капча..

Возможно, хидер как-то влияет на резульата.
Это, к примеру, запрашивает ajax:
(Request-Line) GET /auto/?_=1320169503840&bull_id=6035047&obj=show_contacts&crossdomain_ajax_request=2&re quest=ajax_show_contacts HTTP/1.1
Host ussuriisk.drom.ru
User-Agent Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Accept application/xml, text/xml, */*
Accept-Language ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding gzip, deflate
Accept-Charset windows-1251,utf-8;q=0.7,*;q=0.7
Connection keep-alive
Content-Type application/x-www-form-urlencoded
X-Requested-With XMLHttpRequest
Referer http://ussuriisk.drom.ru/toyota/succeed/6035047.html
Cookie cookie_cityid=9; cookie_regionid=66; DromCurrencyCookie=1; my_geo=66; PHPSESSID=c7c79f267c9ea95e5d356e1a7ca84915


А это из адресной строки вызов:
(Request-Line) GET /auto/?_=1320169503840&bull_id=6035047&obj=show_contacts&crossdomain_ajax_request=2&re quest=ajax_show_contacts HTTP/1.1
Host ussuriisk.drom.ru
User-Agent Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding gzip, deflate
Accept-Charset windows-1251,utf-8;q=0.7,*;q=0.7
Connection keep-alive
Cookie cookie_cityid=9; cookie_regionid=66; DromCurrencyCookie=1; my_geo=66; PHPSESSID=c7c79f267c9ea95e5d356e1a7ca84915


Но, подозреваю, что именно по первому параметру ("_"), распознается робот и отдается неверный код оператора. Я сходу не вижу, откуда достается этот параметр.


sniknik   (2011-11-01 16:46:00) [11]

а понял, в куках регион есть, первые цифры наверное от него зависят.


sniknik   (2011-11-01 16:44:00) [12]

упс... нет, сейчас поменялся, видать там из кэша смотрел.


sniknik   (2011-11-01 16:40:00) [13]

всего там хватает...
тот же самый запрос со страницы при нажатии кнопки получает именно +7 (996) 261-0278 (по данным фаребага) но отображает +7 (924) 261-0278

защита? ;)


Mach3   (2011-11-01 16:40:00) [14]

"Откуда пришли" указать?


Медвежонок Пятачок   (2011-11-01 16:38:00) [15]

Почти одно и тоже

так тебе почти одни и те же коды оперторов возвращаются в обоих случаях.
ну немного отличаются.
но не на порядок же.


Медвежонок Пятачок   (2011-11-01 16:36:00) [16]

ты в заголовки-то смотри в случае гета из браузера и гета аяксового.

> не суди.. и не судимым будешь..
не тупи и не тупым будешь


Mach3   (2011-11-01 16:36:00) [17]

(Request-Line):GET /auto/?_=1320154001505&bull_id=5800891&obj=show_contacts&crossdomain_ajax_request=2&re quest=ajax_show_contacts HTTP/1.1
User-Agent:Opera/9.80 (Windows NT 5.1; U; MRA 5.7 (build 03639); ru) Presto/2.9.168 Version/11.51
Host:ussuriisk.drom.ru
Accept-Language:ru-RU,ru;q=0.9,en;q=0.8
Accept-Encoding:gzip, deflate
Referer: http://ussuriisk.drom.ru/toyota/succeed/5800891.html
Cookie:PHPSESSID=6d4dc5cfeb76f2390bf7d3caad5c209b; cookie_cityid=4; cookie_regionid=25; DromCurrencyCookie=1; my_geo=25; __utma=175010237.909993659.1292484248.1320132495.1320151997.38; __utmb=175010237.8.10.1320151997; __utmc=175010237; __utmz=175010237.1320132495.37.3.utmcsr=delphimaster.ru|utmccn=(referral)|utmcmd =referral|utmcct=/cgi-bin/forum.pl
Connection:Keep-Alive
Content-Type:application/x-www-form-urlencoded
X-Requested-With:XMLHttpRequest
Accept:application/xml, text/xml, */*


(Request-Line):GET /auto/?_=1320154001505&bull_id=5800891&obj=show_contacts&crossdomain_ajax_request=2&re quest=ajax_show_contacts HTTP/1.1
Content-Type:text/html
Host:ussuriisk.drom.ru
Accept:text/html, */*
User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)

Почти одно и тоже


Mach3   (2011-11-01 16:34:00) [18]

Поделитесь? я ничего не вижу =((((


Медвежонок Пятачок   (2011-11-01 16:28:00) [19]

по крайней мере два потенциальных поля для этого я там вижу


Медвежонок Пятачок   (2011-11-01 16:23:00) [20]

видимо не хватает полей в заголовке гет запроса, а они анализируются сервером.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо