你這樣抓別人肯定不讓你采集了,這是采集措施吧。你要用專業(yè)工具就可以應(yīng)對常見的防采集措施,試試八爪魚采集器,我自己測抓幾萬頁面也沒問題,還能云采集加速的。

創(chuàng)新互聯(lián)服務(wù)項目包括綦江網(wǎng)站建設(shè)、綦江網(wǎng)站制作、綦江網(wǎng)頁制作以及綦江網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,綦江網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到綦江省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
可以用以下4個方法來抓取網(wǎng)站 的數(shù)據(jù):
1. 用 file_get_contents 以 get 方式獲取內(nèi)容:
?
$url = '';
$html = file_get_contents($url);
echo $html;
2. 用fopen打開url,以get方式獲取內(nèi)容
?
$url = '';
$fp = fopen($url, 'r');
stream_get_meta_data($fp);
$result = '';
while(!feof($fp))
{
$result .= fgets($fp, 1024);
}
echo "url body: $result";
fclose($fp);
3. 用file_get_contents函數(shù),以post方式獲取url
?
$data = array(
'foo'='bar',
'baz'='boom',
'site'='',
'name'='nowa magic');
$data = http_build_query($data);
//$postdata = http_build_query($data);
$options = array(
'http' = array(
'method' = 'POST',
'header' = 'Content-type:application/x-www-form-urlencoded',
'content' = $data
//'timeout' = 60 * 60 // 超時時間(單位:s)
)
);
$url = "";
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
echo $result;
4、使用curl庫,使用curl庫之前,可能需要查看一下php.ini是否已經(jīng)打開了curl擴展
$url = '';
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
直接用Curl就行,具體爬取的數(shù)據(jù)可以穿參查看結(jié)果,方法不區(qū)分淘寶和天貓鏈接,但是前提是必須是PC端鏈接,另外正則寫的不規(guī)范,所以可以自己重寫正則來匹配數(shù)據(jù)。
能夠做網(wǎng)絡(luò)爬蟲的編程語言很多,包括PHP、Java、C/C++、Python等都能做爬蟲,都能達(dá)到抓取想要的數(shù)據(jù)資源。針對不同的環(huán)境,我們需要了解他們做爬蟲的優(yōu)缺點,才能選出合適的開發(fā)環(huán)境。
(一)PHP
網(wǎng)絡(luò)爬蟲需要快速的從服務(wù)器中抓取需要的數(shù)據(jù),有時數(shù)據(jù)量較大時需要進(jìn)行多線程抓取。PHP雖然是世界上最好的語言,但是PHP對多線程、異步支持不足,并發(fā)不足,而爬蟲程序?qū)λ俣群托室髽O高,所以說PHP天生不是做爬蟲的。
(二)C/C++
C語言是一門面向過程、抽象化的通用程序設(shè)計語言,廣泛應(yīng)用于底層開發(fā),運行效率和性能是最強大的,但是它的學(xué)習(xí)成本非常高,需要有很好地編程知識基礎(chǔ),對于初學(xué)者或者編程知識不是很好地程序員來說,不是一個很好的選擇。當(dāng)然,能夠用C/C++編寫爬蟲程序,足以說明能力很強,但是絕不是最正確的選擇。
(三)Java
在網(wǎng)絡(luò)爬蟲方面,作為Python最大的對手Java,擁有強大的生態(tài)圈。但是Java本身很笨重,代碼量大。由于爬蟲與反爬蟲的較量是持久的,也是頻繁的,剛寫好的爬蟲程序很可能就不能用了。爬蟲程序需要經(jīng)常性的修改部分代碼。而Java的重構(gòu)成本比較高,任何修改都會導(dǎo)致大量代碼的變動。
(四)Python
Python在設(shè)計上堅持了清晰劃一的風(fēng)格,易讀、易維護(hù),語法優(yōu)美、代碼簡潔、開發(fā)效率高、第三方模塊多。并且擁有強大的爬蟲Scrapy,以及成熟高效的scrapy-redis分布式策略。實現(xiàn)同樣的爬蟲功能,代碼量少,而且維護(hù)方便,開發(fā)效率高。
名稱欄目:php可以爬數(shù)據(jù)嗎,php爬取數(shù)據(jù)
文章鏈接:http://chinadenli.net/article25/dsgjgci.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、定制網(wǎng)站、網(wǎng)站導(dǎo)航、定制開發(fā)、面包屑導(dǎo)航、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)