Web サイトから一部のコンテンツを削除しようとしましたが、些細な問題が発生しましたが、解決策が見つかりません。最初のページでは機能しますが、(curl を使用して) 次のページをブラウズすると、ページ 1 のコンテンツが得られますが、これは奇妙なことです。ウェブサイトにはいくつかのスクラップ保護があると思いますが、それらを特定する方法が見つかりません...
<?php
$i = 1;
$links = array();
while($i < 3)
{
$ch = curl_init();
$url = 'http://www.gites-de-france.com/location-vacances-chambre-hotes.html?page=$i&chambre=o&xhtml=O&acc=CHAMBRE,CHAMBRE&order_by=prix&order_by_tri=asc&';
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_REFERER, "http://www.google.fr/");
curl_setopt($ch, CURLOPT_USERAGENT, "MozillaXYZ/1.0");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 100);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$html = curl_exec($ch);
curl_close($ch);
$doc = phpQuery::newDocument($html);
foreach($doc['.vignette a'] as $a){
$url = '';
$links[] .= pq($a)->attr('href');
}
$i++;
}
print_r($links);
?>