最近在搞爬蟲,因為爬取量大,經常導致封IP的現象,(網上投票也經常遇到限制Ip的破事),就自己准備寫個,找了很多的文獻(也就是很多google),所說的要不就是幾行代碼,要不就是錯誤的,樓樓表示被坑的很慘,經常性的訪問本機IP,浪費大量的時間,今天做完了,就拿出來和大家分享下,話不多說,我們下面上代碼
1 最簡單就是Jsop連接(樓樓第一次測試就通過了)
全局設置端口好和ip地址(具體不多做解釋,這里我們解釋下 System.getProperties().setProperty() == System.setProperty()) --http://city.ip138.com/ip2city.asp 測試IP
System.setProperty 相當於一個靜態變量 ,存在內存里面!
可以在項目的任何一個地方 通過System.getProperty("變量");來獲得,
2 原生Java


上面的代碼就不細說了,有一點跟大家提一下,HttpURLConnection httpURLConnection = (HttpURLConnection)connection; 用httpURLConnection來查看返回的StatusCode
connection.getInputStream(); 相當於connect
3 Socket於Proxy對象代理
此方法和原生Java類似,只不過是封裝了下端口和地址
4 HttpClient
HttpClient連接的時候大家一定要記得釋放連接,后果你們懂得
總:4種方式,都親測可過,針對一些連接的問題,給大家一些檢查的建議
1 查看端口,ip地址是否正確(樓樓剛開始的時候端口寫錯,測了半天全是本地ip,真是想死的心都有)
2 java連接的時候,若一直顯示本地IP,請記住,一定是你代碼哪里寫錯了,血的教訓,然后各種找資源,查代碼,
connection.connect();少了這句,可是
connection.getInputStream()里不是實現了嗎,樓樓表示不解,查了半天,然並卵,大家可以加上這句試試
再次感謝各位看官~