Как замаскировать свой PHP-скрипт под браузер?

Мы ' Я уже некоторое время использую информацию с сайта (что позволяет сайт, если вы указываете источник, а мы это делаем), и мы копировали информацию вручную. Как вы могли себе представить, это может стать довольно утомительным занятием, поэтому я пытался автоматизировать процесс, получая информацию с помощью сценария PHP.

URL-адрес, который я пытаюсь получить, будет:

http://mediaforest.ro/weeklycharts/viewchart.aspx?r=WeeklyChartRadioLocal&y=2010&w=46 08-11-10 14-11-10

Если я введу его в браузер работает, если я попробую file_get_contents (), я получу Bad Request

Я решил, что они проверили, является ли клиент браузером, поэтому я свернул решение на основе CURL:

$ch = curl_init();

$header=array(
  'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12',
  'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  'Accept-Language: en-us,en;q=0.5',
  'Accept-Encoding: gzip,deflate',
  'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7',
  'Keep-Alive: 115',
  'Connection: keep-alive',
);

curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_COOKIEFILE,'cookies.txt');
curl_setopt($ch,CURLOPT_COOKIEJAR,'cookies.txt');
curl_setopt($ch,CURLOPT_HTTPHEADER,$header);
$result=curl_exec($ch);

curl_close($ch);

Я проверил и заголовки идентичны заголовкам моего браузера, и я все еще получаю Bad Request

Поэтому я попробовал другое решение:

http://www.php.net/manual/en/function.curl-setopt.php#78046

К сожалению, это тоже не работает, и у меня нет идей. Что мне не хватает?

14
задан netcoder 15 November 2010 в 15:09
поделиться