最近在學習python抓取資料,之前發了幾篇爬蟲小白的文章,了解了不同的方法進行資料的爬取。
(1)python+selenium+chromedriver
(2)requests庫
(3)scrapy框架
當然可以組合使用,使用scrapy中整合selenium爬蟲使用,以及selenium+requests進行資料爬取,視個人需求而定。
selenium是web自動化測試工具集,最初是為了**自動化測試開發的,selenium測試直接執行在瀏覽器中,就像真正的使用者在操作一樣。支援的瀏覽器包括ie(7, 8, 9, 10, 11),mozilla firefox,safari,google chrome,opera等,也包括phantomjs。phantomjs是乙個無頭瀏覽器,執行不會跳出相應的瀏覽器,執行效率相對較高,在除錯中可以先換成chrome,方便除錯,最後再換成phantomjs即可。但是去年chrome和firefox已經相繼推出無頭瀏覽器模式。其實selenium+headlessfirefox/chrome跟selenium+friefox/chrome的區別就是例項化的時候傳個引數而已。對於一般**來說scrapy、requests等都可以爬取,但有些資訊需要執行js才能顯現。使用selenium爬蟲缺點:
(1)速度慢。每次執行爬蟲都開啟乙個瀏覽器,如果沒有設定,還會載入、js等等一大堆東西;
(2)占用資源太多。即便換成無頭瀏覽器,也都是開啟瀏覽器,而且很多**會驗證引數。
(3)對網路的要求會更高。載入了很多可能沒有價值的補充檔案(如css,js和影象檔案)。
與僅僅請求真正需要的資源(使用單獨的http請求)相比,這可能會產生更多的流量。
爬取規模不能太大。
至於使用哪種爬蟲方式,可以取決於個人的實際需求。
Java 爬蟲工具 開源API對比
注 基於網上收集到的資訊,未經 試驗過。名稱分類優點缺點git 評價 apache nutch 搜尋引擎 分布式 依賴hadoop 為搜尋引擎設計 重量級,用於精抽取會低效,nutch外掛程式除錯困難 老大級spiderman 爬蟲微核心 外掛程式式架構,重配置 無需寫 多執行緒 使用者太少 sta...
哪個爬蟲框架好」簡單對比」
對於爬蟲框架本身來說,都是很優秀的,說那個更好,不如說那個更適合公司的業務需求。比如j aweb專案中需要某些 的金融系列新聞,得每天定時去抓取一些資料,你就可以考慮webmagic框架,能夠輕鬆的將爬蟲 邏輯模組化到專案中,毫無違和感。當然也可以是別的框架,只要合適就好 以上爬蟲框架就不介紹了,真...
Document方法對比
1 document.getelementsbyname name 用於獲取乙個頁面中包含所有指定name元素的物件陣列。2 document.getelementbyid id 用於獲取物件,只不過我們只能獲取id重複的那些物件中在html呈現時第乙個出現的物件。而這時重複的id會在引用時自動變成...