經過修改后有顯示加速,代碼如下:
ini_set('default_socket_timeout', 1); //關鍵點11111111111111; $opts = array("http" => array( "method" => "GET", "timeout" => 60, "Host" => "www.****.com", "Accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "Accept-Encoding" => "gzip, deflate, sdch", "Accept-Language" => "zh-CN,zh;q=0.8", "User-Agent" => "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36", "Upgrade-Insecure-Requests" => "1", "Connection:" => "close" //關鍵點22222222222;
));
$context = stream_context_create($opts);
$html = @file_get_contents("http://www.****.com/",false,$context);
關鍵是添加了這兩句代碼:
ini_set('default_socket_timeout', 1);
"Connection:" => "close"
參考資料:
https://segmentfault.com/q/1010000003913255
http://bbs.csdn.net/topics/391833478?page=1
雖然速度是有顯示加快了,但是偶爾還是會出現抓取不到內容的情況。
以上兩句代碼配合 curl_init()函數會是怎么樣呢?你們去試試吧。