久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

python爬蟲技術(shù)的選擇

 天道酬勤YXJ1 2016-12-31

本篇文章不是入門帖,需要對python和爬蟲領(lǐng)域有所了解,。

爬蟲又是另外一個領(lǐng)域,,涉及的知識點(diǎn)比較多,不僅要熟悉web開發(fā),,有時候還涉及機(jī)器學(xué)習(xí)等知識,,不過在python里一切變的簡單,有許多第三方庫來幫助我們實(shí)現(xiàn),。使用python編寫爬蟲首先要選擇合適的抓取模塊,,最簡單的功能就是能發(fā)送和處理請求, 下面就介紹幾個常用的抓取的方式,。

一,、python 自帶的urlib2和urlib或者第三方模塊requests

這種方案適合簡單的頁面爬蟲,比如爬取博客園推薦文章,。

urllib2和urllib是python自帶模塊可用來發(fā)送處理請求,,雖然比較靈活但API易用性較差,所以一般都要進(jìn)行二次封裝,,我曾經(jīng)也進(jìn)行過封裝,,最后發(fā)現(xiàn)自己封裝出來的模塊無限趨近于非常成熟的requests庫,所以還是直接使用requests吧,,當(dāng)然requests只發(fā)送和接受請求,,對于頁面分析還要配合lxml或beautifulsoup等第三方庫進(jìn)行,。高級點(diǎn)的爬蟲不僅僅是發(fā)送和處理請求,還需要處理異常,,請求速度控制等問題,,這就需要我們寫額外的代碼去控制,,當(dāng)然我們可以自己寫只是時間問題,,但完全沒有必要,接下來我會介紹第二種方案,。

二,、scrapy框架

scrapy是爬蟲領(lǐng)取的佼佼者,目前我做的項目無論復(fù)雜與否,,都采用scrapy進(jìn)行,,對于請求調(diào)度,異常處理都已經(jīng)封裝好了,,而且有第三方的scrapy-redis還可以支持分布式,,我們把關(guān)注點(diǎn)放在更重要的頁面分析和規(guī)則編寫上,代碼可以參考我github上的例子,。

三,、python selenium

這種方式我稱為終極必殺器,一般是實(shí)在沒辦法的時候才用,,以前我在利用某家搜索引擎抓取文章時,,該搜索引擎采用的比較高難度的反爬蟲機(jī)制而且不斷變化讓人找不到規(guī)律,最典型的特點(diǎn)就是cookie會隨機(jī)隱藏到某個頁面js和圖片中,,解決方案就是模擬瀏覽器的行為加載所有js等靜態(tài)資源文件,,如果自己寫個瀏覽器取解析太扯蛋了,如果chrome瀏覽器能開放接口,,通過chrome的加載方式獲取頁面的內(nèi)容就好了,,這就是selenium了,selenium加上隨機(jī)等待時間可以模擬出和人非常類似的操作行為,,缺點(diǎn)就是速度較慢,,但是一般爬蟲對抓取速度要求不高,重要的是穩(wěn)定性,,這種方式對于抓取反爬蟲機(jī)制做的好的大型網(wǎng)站比較適用,。

總結(jié),對于大部分爬蟲需求直接用scrapy解決,,如果解決不了再采用第一種或第三種方案,,就這么簡單。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多