我想要用户输入的网页的源代码。我们可以使用file_get_contents来获取它。
但是在使用file_get_contents时它会给出:
Warning: file_get_contents(http://www.google.com): failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden in /var/www/html/scrap/yelp/simple_html_dom.php on line 75
如果我从浏览器打开相同的网址,它会正确打开。谷歌的人如何使用file_get_content或浏览器进行查询?
更新:我也试过curl,但仍然是同样的错误
答案 0 :(得分:1)
我的建议是您要解析的网站已阻止不需要的请求,请尝试使用cUrl library。
答案 1 :(得分:1)
使用useragent尝试CURL
function get_web_page( $url ){
$options = array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_USERAGENT => "Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0",
CURLOPT_SSL_VERIFYPEER => false,
);
$ch = curl_init( $url );
curl_setopt_array( $ch, $options );
$content = curl_exec( $ch );
curl_close( $ch );
return $content;
}
echo get_web_page("http://www.google.com");
答案 2 :(得分:0)
嘿它会工作正常问题是你的代码错了。
file_get_contents('http://www.google.com');
使用它会起作用。 如果你想要任何其他帮助,请告诉我。