При изменении url CURL отдает предыдущую страницу

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

SkiLLer

Гуру форума
Регистрация
22 Авг 2007
Сообщения
306
Реакции
64
Есть скрипт, который должен забирать страницу результатов поиска, находить ссылки на другие страницы, выбирать рандомную страницу и скачивать. Все это скрипт делает кроме того, что когда скачиваем рандомную страницу поиска, скачиватся первая страница. Может кто глянет в чем тут дело?
Вот сам скрипт:
PHP:
set_time_limit(60);
function GetPage($url,$post=false){
	$agent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322)" ;
	$header [] = "Accept: text/html;";
	$header [] = "Accept_charset: utf-8";
	$header [] = "Accept_encoding: identity";
	$header [] = "Accept_language: en-us";
	$header [] = "Connection: Keep-Alive";
	$ch = curl_init();
	curl_setopt($ch,CURLOPT_URL,$url);
	curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
	if($post){
		curl_setopt($ch,CURLOPT_POST,1);
		curl_setopt($ch,CURLOPT_POSTFIELDS,$post);
	}
	curl_setopt($ch,CURLOPT_USERAGENT,$agent);
	curl_setopt($ch,CURLOPT_HTTPHEADER,$header );
	curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
	$page = curl_exec($ch);
	return $page;
}
$keyword=urlencode('home loan');
$from="http://www.articlesbase.com/find-articles.php?q=$keyword";
$page = GetPage($from);
preg_match_all("|<a href=\"(find-articles\.php\?q=[^ >]+&amp;page=[0-9]+)\">|",$page,$out,PREG_PATTERN_ORDER);
$urls = $out[1];
$from = "http://www.articlesbase.com/".$urls[rand(0,count($urls)-1)];
echo $from;
$page = GetPage($from);
echo $page;
 
попробуй rand заменить на mt_rand
 
в ссылке &amp; заменить на &, вставить перед $page = GetPage($from);
PHP:
$from = str_replace('&amp;', '&', $from);
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху