如何获得大量URL的返回码

发布于 2021-11-26 12:10:01 字数 264 浏览 820 评论 3

如题,我下载从网上抓取了四万个URL,由于大量有些URL返回码为404,使得抓取网页的源代码的时间大量增加。现在我的做法是如果返回码为404,就将其URL加入到一个表中,下次再跑程序时,如果该URL在这个表中,就不必再抓其对应的源数据。现在在获取网页的返回码时,遇到了问题,抓到了几百个或者上千个URL时,程序继续运行,但是不输出其返回码了。

如下图:程序采用了多线程,用httpUrlconnection获得的返回码,程序就这样不动了,请各位大神看看,怎么改比较合适?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

妖妓 2021-11-27 23:20:57

就是获得返回码的时候,浪费了大量的时间,现在我直接放过这一设计了,不再获取返回码啦。问题已经解决啦。

成熟的代价 2021-11-27 21:28:06

获取utl 的状态返回码,与大量和多线程的关系不大。在每一次请求时,获取每一个请求的状态返回码即可,刚刚查了一下 API 在 httpUrlConnection 里,有个方法getResponseCode 可以获取返回码。

个人觉得,应该不需要存进数据库吧,如果每一次请求返回的状态码是 404 的就放弃即可。

建议使用 httpclient

孤独患者 2021-11-27 16:22:08

返回状态里包含返回码,或者你可以做异常处理

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文