Я хочу, чтобы получить HTML исходный код с этой страницы: http://bahn.ltur.com/index/search/?lang=de_DE&searchin=DE-SB-VI&trip_mode=trip_simple&from_spar=Hamburg+Dammtor&to_spar=Leipzig+Hbf&start_datum=01.07.2012&start_time=23%3A49&end_datum=01.07.2012&end_time=23%3A51&SEA_adults=1&trainclass_spar=2завиток получить Исходник- GETparams
я могу получить доступ к сайту, когда я иду в этот URL. Я не могу получить исходный код через завиток. не в bash «curl -iL url> site.html», ни с этим скриптом php: Я получаю стартовую страницу (bahn.ltur.com).
Код для отправки запроса GET
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,'http://bahn.ltur.com/index/search/?lang=de_DE&searchin=DE-SB-VI&trip_mode=trip_simple&from_spar=Hamburg+Dammtor&to_spar=Leipzig+Hbf&start_datum=01.07.2012&start_time=23%3A49&end_datum=01.07.2012&end_time=23%3A51&SEA_adults=1&trainclass_spar=2');
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_exec($ch);
я также пытался отправить POST PARAMS к этой конкретной страницы - но не повезло. Форма находится на этой странице: http://bahn.ltur.com/ с [...] , когда вы нажмете «поиск», вы видите короткое время выше (blah/index/search /? Params [...]).
любая помощь?
/////// Edit:
/////// Ответ:
Первое: получить печенье со страницы (ж/GET-Params) Во-вторых: перейти к подробностям и отправить файл cookie.
Благодаря @ Даниэлю Штенбергу за подсказку! Дайте ему репутацию!
/* get cookie */
$ckfile = tempnam ("/tmp", "CURLCOOKIE");
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,'http://bahn.ltur.com/index/search/?lang=de_DE&searchin=DE-SB-VI&trip_mode=trip_simple&from_spar=Hamburg+Dammtor&to_spar=Leipzig+Hbf&start_datum=01.07.2012&start_time=23%3A49&end_datum=01.07.2012&end_time=23%3A51&SEA_adults=1&trainclass_spar=2');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_COOKIEJAR, $ckfile);
$html = curl_exec($ch);
/* get page */
$ch = curl_init("http://bahn.ltur.com/details");
curl_setopt($ch, CURLOPT_COOKIEFILE, $ckfile);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
echo $html;
curl_close($ch);
спасибо, но все равно неудобства. нет ошибки, я все равно получаю «домашнюю страницу». – meeeeeh