Проблема получения контента для парсинга

Статус
В этой теме нельзя размещать новые ответы.

funman

Знаток
Регистрация
28 Дек 2007
Сообщения
163
Реакции
26
На сайте похоже стоит какая то защита от парсинга , срочно нужна ваша помощь.

вот пример


выдает ошибку.
failed to open stream: Redirection limit reached, aborting in
 
воспользуйтесь курлом, в нем можно будет отследить редиректы и по необходимости увеличить максимальное количество, по умолчанию стоит 20 или 30 переходов.
П.С.: смог получить страницу default.aspx с первого раза при веключенной опции CURLOPT_FOLLOWLOCATION
 
воспользуйтесь курлом, в нем можно будет отследить редиректы и по необходимости увеличить максимальное количество, по умолчанию стоит 20 или 30 переходов.
П.С.: смог получить страницу default.aspx с первого раза при веключенной опции CURLOPT_FOLLOWLOCATION

я изначально пробовал, но что то видимо не хватает.

 
сложный случай :), имхо
пока не смог разобраться почему скрипт циклится при редиректе на Login.aspx,
браузер же приходит на Login.aspx, получает куки и идет на требуюмую страницу :).
 
вот 2 трабла в этом скрипте:

когда идет обращение к странице
(а именно к ней должно идти первое обращение) - там в заголовке ставится 2 заголовка куки

Set-Cookie: ASP.NET_SessionId=hpfjij45jrl5v0aifxg5nybs; path=/; HttpOnly
Set-Cookie: .ASPXAUTH=FF5E27D61F33B04B351E3EC8AF76CC67AAE8935654D57C344E7B4B408702D3743F1E9EA75F894C7B786242888F5B847B350088ACDF9A40EA6C34C3248CA941ADA9A9D5EA3DCB5546E631541AE6A3F1CC; path=/; HttpOnly

проблема1: ваш скрипт видит только первый заголовок

далее идет редирект с передаваемыми куками на страницу


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

т.е. вам нужно решить проблему с куками и распарсить форму, для передачи полей с нужными параметрами - это не оч сложно :)

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

вот запрос первой страницы

PHP:
$url="http://www.cse-cargo.ru/Login.aspx?ReturnUrl=%2fClient%2fTracking.aspx";  

$ch = curl_init($url); 
	curl_setopt($ch, CURLOPT_URL, $url); 
	curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
	curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1)"); 
	curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
	curl_setopt($ch, CURLOPT_COOKIEJAR,  $cookie_file);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); 
	curl_setopt($ch, CURLOPT_REFERRER, "http://www.cse-cargo.ru/Client/Tracking.aspx");
	curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_close($ch);

каждую следующу страницу грузим отедльно и обрабатываем тоже

куки обрабатываем в памяти, сохранение там только для просмотра сделал :)

остальные по аналогии, только куки свои подставляем

ПС вроде поправил, как было, только заголовки я массивом еще передаю, не думаю, что это играет роль
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху