爬虫时遇到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()前,果然也正确输出了。

猜你喜欢

转载自blog.csdn.net/qq_34299554/article/details/82929228