最近在研究Java爬蟲,小有收穫,打算一邊學一邊跟你們分享下,在乾貨開始前想先跟你們囉嗦幾句。java
1、首先說下爲何要研究Java爬蟲python
Python已經火了好久了,它功能強大,其中很擅長的一個就是寫爬蟲程序。做爲一名Javaer,想要寫爬蟲的話難道要學習python嗎?數據庫
想到這個問題我去度娘了下,其實java也能夠寫爬蟲,只是須要的代碼行數要比python多。可是用java寫就不須要專門爲了爬蟲再去學習一門新語言了,感受省時省力省麻煩。恰好最近有點時間,就去專門研究了下。瀏覽器
2、Java爬蟲要考慮的問題以及用到哪些技術和工具網絡
爬蟲須要考慮的問題有不少,可是對於咱們入門級的來講主要有以下幾個:工具
如何抓取頁面數據,可使用HttpClient或HtmlUnit學習
如何解析頁面數據,可使用Jsoupurl
如何反反爬蟲,能夠假裝瀏覽器和使用代理IP代理
如何url去重,能夠創建一個隊列用來記錄已經爬取過的url,每次處理前先看下當前要處理的url是否在隊列內隊列
如何持久化數據,能夠保存到數據庫,也能夠保存到文件中
接下來的文章將逐步分享這些內容。
3、優秀的開源Java爬蟲
能夠看下知乎上的這個內容
《GitHub 上有哪些優秀的 Java 爬蟲項目》
https://www.zhihu.com/question/31427895
4、學習資料推薦
1.《本身動手寫網絡爬蟲》羅剛 王振東 編著,應該是市面上惟一一個用Java寫案例的爬蟲書籍,時間比較久了,可是理論知識仍是值得看的
2.百度