Java爬蟲框架,WebMagic 0.4.0 釋出
webmagic採用完全模組化的設計,功能覆蓋整個爬蟲的生命週期(連結提取、頁面下載、內容抽取、持久化),支援多執行緒抓取,分散式抓取,並支援自動重試、自定義UA/cookie等功能。
webmagic包含強大的頁面抽取功能,開發者可以便捷的使用css selector、xpath和正規表示式進行連結和內容的提取,支援多個選擇器鏈式呼叫。
此次更新主要對下載模組進行了優化,並增加了同步下載的API,同時對程式碼進行了一些重構。
一、Downloader部分更新:
- 升級HttpClient到4.3.1,重寫了HttpClientDownloader的程式碼 #32。
- 在http請求中主動開啟gzip,降低傳輸開銷 #31。
-
修復0.3.2及之前版本連線池不生效的問題 #30,使用HttpClient 4.3.1新的連線池機制,實現連線複用功能。
經測試,下載速度可達到90%左右的提升。測試程式碼:Kr36NewsModel.java 。
二、增加同步抓取的API,對於小規模的抓取任務更方便:
OOSpider ooSpider = OOSpider.create(Site.me().setSleepTime(100), BaiduBaike.class); BaiduBaike baike = ooSpider.<BaiduBaike>get("http://baike.baidu.com/search/word?word=httpclient&pic=1&sug=1&enc=utf8"); System.out.println(baike);
三、Site(配置類)增加更多配置項:
- 支援Http代理: Site.setHttpProxy #22 。
- 支援自定義所有Http頭:Site.addHeader #27 。
- 支援開啟和關閉gzip:Site.setUseGzip(false) 。
- Site.addStartUrl移到了Spider.addUrl,因為作者認為startUrl應該是Spider的屬性,而不是Site的屬性。
四、Spider(主邏輯)進行了一些重構:
- 重寫了多執行緒邏輯,程式碼更加易懂了,同時修復了一些執行緒安全問題。
- 引入了Google Guava API,讓程式碼更簡潔。
- 增加配置Spider.setSpawnUrl(false),此選項為false時,只下載給定的url,不下載任何新發現的url。
- 可以給初始url中附帶更多資訊:Spider.addRequest #29
另外webmagic郵件組成立了,歡迎加入:https://groups.google.com/forum/#!forum/webmagic-java
相關文章
- WebMagic 爬蟲框架淺析Web爬蟲框架
- 爬蟲框架Webmagic原始碼分析之Spider爬蟲框架Web原始碼IDE
- Java實現網路爬蟲 案例程式碼3:使用webmagic框架獲取天氣預報Java爬蟲Web框架
- Layotto v0.4.0-rc 釋出
- 基於webmagic的爬蟲專案經驗小結Web爬蟲
- Halo 部落格系統 -0.4.0 釋出
- SWCJ爬蟲框架爬蟲框架
- Scrapy爬蟲框架爬蟲框架
- 使用webmagic爬蟲對百度百科進行簡單的爬取Web爬蟲
- 爬蟲(9) - Scrapy框架(1) | Scrapy 非同步網路爬蟲框架爬蟲框架非同步
- 爬蟲(三)-客戶端爬取Android SDK釋出爬蟲客戶端Android
- 爬蟲框架如何搭建爬蟲框架
- 什麼是爬蟲?Python爬蟲框架有哪些?爬蟲Python框架
- 使用java 爬蟲Java爬蟲
- 爬蟲平臺Crawlab v0.2釋出爬蟲
- 爬蟲框架-scrapy的使用爬蟲框架
- python爬蟲Scrapy框架Python爬蟲框架
- Scrapy爬蟲框架的使用爬蟲框架
- 六種高效爬蟲框架爬蟲框架
- Python爬蟲—Scrapy框架Python爬蟲框架
- Scrapy 示例 —— Web 爬蟲框架Web爬蟲框架
- python網路爬蟲(14)使用Scrapy搭建爬蟲框架Python爬蟲框架
- 爬蟲 Scrapy框架 爬取圖蟲圖片並下載爬蟲框架
- Python爬蟲教程-30-Scrapy 爬蟲框架介紹Python爬蟲框架
- Sentinel Go 0.4.0 釋出,支援熱點流量防護能力Go
- Java爬蟲與Python爬蟲的區別?Java爬蟲Python
- 2個月精通Python爬蟲——3大爬蟲框架+6場實戰+反爬蟲技巧+分散式爬蟲Python爬蟲框架分散式
- 在scrapy框架下建立爬蟲專案,建立爬蟲檔案,執行爬蟲檔案框架爬蟲
- Python爬蟲教程-31-建立 Scrapy 爬蟲框架專案Python爬蟲框架
- Java爬蟲翻頁Java爬蟲
- 分享個人開源爬蟲框架爬蟲框架
- gerapy框架爬蟲專案部署框架爬蟲
- 常用python爬蟲框架整理Python爬蟲框架
- 常見python爬蟲框架Python爬蟲框架
- SuperEdge v0.4.0 釋出,大幅提升使用和運維效率運維
- Java爬蟲批量爬取圖片Java爬蟲
- Java爬蟲-爬取疫苗批次資訊Java爬蟲
- Java 爬蟲專案實戰之爬蟲簡介Java爬蟲