当前位置:  开发笔记 > 编程语言 > 正文

测试大量格式良好的URL的有效性的最快方法是什么

如何解决《测试大量格式良好的URL的有效性的最快方法是什么》经验,为你挑选了2个好方法。

我的项目要求我验证大量的Web URL.这些URL已被一个我无法控制的非常不可靠的进程捕获.所有的URL都已经过regexp验证,并且已知格式正确.我也知道他们都有有效的TLD

我希望能够快速过滤这些网址,以确定哪些网址不正确.此时我并不关心页面上的内容是什么 - 我只想尽快知道哪些页面不可访问(例如产生404错误).

鉴于有很多这些我不想下载整个页面,只是HTTP标头,然后从标题的内容中好好猜测页面是否可能存在.

可以吗?



1> MrTopf..:

要真正做到这一点,您可能还会使用使用非阻塞IO的eventlet来加快速度.

您可以使用这样的头部请求:

from eventlet import httpc
try:
    res = httpc.head(url)
except httpc.NotFound:
    # handle 404

然后,您可以将其放入一些简单的脚本,例如此处的示例脚本.有了它,你应该通过使用协同程序池获得相当多的并发性.



2> Jeff..:

我假设您希望根据您的标签在Python中执行此操作.在那种情况下,我会使用httplib.(可选)以某种方式按主机对URL进行分组,以便您可以在一个连接中为具有相同主机的URL发出多个请求.使用HEAD请求.

conn = httplib.HTTPConnection("example.com")
conn.request("HEAD", "/index.html")
resp = conn.getresponse()
print resp.status

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有