1. 程式人生 > >爬蟲時遇到Socket is closed

爬蟲時遇到Socket is closed

最近想要點資料,就想自學爬蟲自己爬點資料來用。
https://blog.csdn.net/qy20115549/article/details/52203722
上面這條連結是根據京東商城網址解析網頁查詢裡面有關書的資訊,比如id,name,price,然後存入本地資料庫的一個小demo。但是根據這個教程的花自己還是遇到了一個問題,就是執行到
String entity=EntityUtils.toString(response.getEntity(),“utf8”);
提示socket is close。
百度了以下,推測比較可能的出錯原因在於其中的輸入流異常關閉導致的,
EntityUtils.toString()的實現就是從輸入流讀取寫到緩衝區,自己debug了一下,也沒有找出具體問題所在,百度上對症下藥的也幾乎沒有,後來我推測可能是這一句 getMethod.abort();強制終止,導致輸入流異常關閉,註釋掉這一句果然問題解決了,然後我把出問題的那句程式碼放到abort()前,果然也正確輸出了。