標籤:

php curl抓取不到頁面及來路問題?

$url = "http://mp.weixinbridge.com/mp/wapredirect?url=http%3A%2F%2Fwww.zhihu.com%2F";

$ch = curl_init();

$timeout = 1;

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_HEADER, 1);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

$contents = curl_exec($ch);

curl_close($ch);

echo $contents;

相對路徑的圖片不能顯示,如何使相對路徑的圖片正常顯示?


謝邀,哥們,抓不到數據是因為:

1.你沒有寫header

2.沒有寫cookie,

3.沒有針對https的url特殊設置

所以沒有抓到數據,好好研究我寫的這個代碼,這個是可以抓到數據的。

要是幫到了你,給哥點個贊,支持下。

&

";
} else {
echo $html;
}


我在暑假的時候爬過知乎,而且就是用的php+curl。知乎是有反爬蟲機制的,你要盡量偽裝成瀏覽器,包括header、useragent、cookie等等都設成瀏覽器上的一樣,至於這些在哪可以看到請善用chrome的F12控制台。光偽裝成瀏覽器是不夠的,因為知乎有的頁面是gzip加密的哦,所以你還要做好gzip解密的措施。如果知乎覺得你的行為可疑,知乎還會不定頻率的給你返回空白頁面,所以你還要做好數據驗證的措施。總的來說爬知乎是不難的,但要穩定可靠的一口氣爬完整個知乎還是很困難的。


curl配置增加cookie信息和header頭部試試看,有些網站防採集需要儘可能的模擬。


推薦閱讀:

PHP, Python, Node.js 哪個比較適合寫爬蟲?
28歲轉行,決定入坑IT崗位,短期幾個月先學習哪個方向合適?
為什麼PHP工程師很難招?
php程序中 if(1==$user) 和 if($user ==1) 在效率上有區別嗎?
如何通俗地解釋 CGI、FastCGI、php-fpm 之間的關係?

TAG:PHP | cURL |