ASP.NET CURL
Всем привет и приятных праздников.
столкнулся с проблемой при авторизации на сайт работающем на aspx Вот листинг curl curl_setopt($this->ch, CURLOPT_URL, $url); curl_setopt($this->ch, CURLOPT_CONNECTTIMEOUT, 120); curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($this->ch, CURLOPT_HEADER, 1); curl_setopt($this->ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0'); curl_setopt($this->ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($this->ch, CURLOPT_POST, 0); curl_setopt($this->ch, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT'].'/grab/new/cookie.txt'); curl_setopt($this->ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/grab/new/cookie.txt'); //curl_setopt($this->ch, CURLOPT_HTTPHEADER, array('Expect:')); curl_setopt($this->ch, CURLOPT_COOKIESESSION, true); curl_setopt($this->ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($this->ch, CURLOPT_REFERER, $refer); через httpFox отлавливаю данные, уходящие на сервер Вот строка из заголовка, по которой у меня вопрос. $headers_login=array ( "Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Encoding:gzip, deflate", "Accept-Language:ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3", "Connection:keep-alive", [b]"Cookie:MonitoringPeriod=2; currentPage=; currentPageUKR=; currentPageKAZ=; Language=ru-RU; ASP.NET_SessionId=0jpd41phgq3pnhl2juocgtc3; 10554_1.0.0.0=0jpd41phgq3pnhl2juocgtc3",[/b] "Host:spark-interfax.ru", "Referer:".$refer, "User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:10.0.2) Gecko/20100101 Firefox/10.0.2" ); в выделенной строке вижу среди прочих ASP.NET_SessuionId=0jpd41phgq3pnhl2juocgtc3[идентификатор сессии](котрорый при каждой авторизации разный.) 10554_1.0.0.0=0jpd41phgq3pnhl2juocgtc3[некоторая строка-параметр(при каждой авторизации тоже разная), равная тому же идентификатору сессии, что и ASP.NET_SessionId] Проблема в том, что записывая куки в файл cookie.txt Я получаю примерно следущееэ Цитата:
ну и как факт - не могу авторизоваться на сайте... Может кто нибудь рассказать, что это за параметр такой и как его получить ? |
ASP.NET сайты очень сложны для парсинга, так как важная каждая мелочь.
Например я встречал сайт на котором при переходе на другую страницу навигации отсылалась форма из нескольких сотен полей. и неотсылка хотя бы одного приводила к ошибке. Так что следите за тем, чтобы ваш скрипт делал все-все, как это бы произошло в браузере. |
Часовой пояс GMT +3, время: 20:20. |