如何通过设置与localhost不同的位置来刮取网页?

时间:2015-06-23 00:52:57

标签: php bing goutte

我试图抓住Bing新闻。当我直接访问health news时,我会收到针对美国访问者的健康新闻。当我使用Goutte在localhost中访问它时,它会给出特定于India的结果(这是我的位置)。有没有办法在刮刮时获得美国特定的新闻?

我已设置用户代理以确保它不是问题:

$client = new Client();
$client->setHeader('User-Agent', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36');

我无法想到可能导致此问题的任何其他差异。

2 个答案:

答案 0 :(得分:0)

您没有提供详细信息,所以我可能错了,也许您只需要根据您的请求发送Cookie。首先检查您的浏览器cookie,看看这些值是否会影响网站,如果cookie是您可以使用此代码的问题(如果您使用的是curl):

//incoming cookies path
curl_setopt( $ch, CURLOPT_COOKIEJAR, '');
//your cookie file path 
curl_setopt( $ch, CURLOPT_COOKIEFILE, '' );

答案 1 :(得分:0)

在必应 URL 中传递 cc=US 参数以明确查找美国的新闻。

https://www.bing.com/news/search?q=health+news&cc=US