scrapy爬蟲: https:www.scrapy.org
本篇博客依托的項(xiàng)目: https://github.com/viciousstar/BitcointalkSpider/
scrapy本身提供了很好用的交互式調(diào)試命令,可以方便調(diào)試爬蟲的各種功能。
在爬取 https://bitsharestalk.org 的時(shí)候,發(fā)現(xiàn)網(wǎng)站會(huì)為每一個(gè)url增加一個(gè)sessionid屬性,可能是為了標(biāo)記用戶訪問歷史,而且這個(gè)seesionid隨著每次訪問都會(huì)動(dòng)態(tài)變化,這就為爬蟲的去重處理(即標(biāo)記已經(jīng)爬取過的網(wǎng)站)和提取規(guī)則增加了難度。
比如https://bitsharestalk.org/index.php?board=5.0 會(huì)變成 https://bitsharestalk.org/index.phpPHPSESSID=9771d42640ab3c89eb77e8bd9e220b53&board=5.0,下面介紹集中處理方法
link_filtering()函數(shù)對url進(jìn)行了處理,過濾掉了sessid,關(guān)于Rule類的process_links函數(shù)和links類,官方文檔中并沒有給出介紹,給出一個(gè)參考 https://groups.google.com/forum/#!topic/scrapy-users/RHGtm_2GO1M(也許需要梯子,你懂得)
如果你是自己實(shí)現(xiàn)的爬蟲,那么url的處理更是可定制的,只需要自己處理一下就可以了。
2. 通用方法,修改scrapy的去重策略,直接用自己的算法替代內(nèi)置算法。或者編寫自己的scheduler中間件,這一部分筆者沒有親自實(shí)現(xiàn),應(yīng)該是版本更新,
scrapy這方面有改動(dòng),讀者可以自行探索。參考連接: http://blog.pluskid.org/?p=381
瀏覽器會(huì)在table標(biāo)簽下添加tbody
使用下載器中間件即可,詳情參考代碼吧。(有時(shí)間詳細(xì)補(bǔ)充)
ps: 吐槽一下排版,博客排版一直沒找到什么好的工具,只能在網(wǎng)頁版排了,不知道各位能不能推薦一下 -_-||, 拒絕任何形式的轉(zhuǎn)載。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注