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