python - 在 Python 中扫描一组 URL 的最快方法是什么?

标签 python url wsgi

我需要扫描一组给定的 URL 并获取 HTTP 状态代码,例如 Python 中的“200 OK”。我目前正在使用 urllib 来执行此操作。有更快的方法吗?

Python代码

def get_status(url):
try:
    return urllib.urlopen(url).getcode()

except StandardError :
    return None

最佳答案

Couple 评论我会做出更快更快乐的状态检查。第一个技巧是使用 http HEAD 方法。这只要求服务器提供 http header (包括状态代码),而无需它也为页面正文提供服务。

第二个 urllib 有效,但我建议使用精彩的 Requests库,它为几乎所有您想用 http 做的事情提供了更好的 api。

最后我会使用 gevents库使您能够异步下载每个 header ,从而大大加快整个过程。

关于python - 在 Python 中扫描一组 URL 的最快方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11565606/

相关文章:

python - 如何在 Bottle 微框架中使用 beaker session?

python - 如何从 python 模块 (boost.python) 导入类?

java - 支持桌面和桌面浏览器,但浏览器仍然挂起

javascript - 使用 vbscript 获取具有 javascript 的 Web 内容

python - 如何调试/记录 wsgi python 应用程序?

python - 导入错误 : cannot import name 'app'

python + Django : unable to find module with Popen

带有日期时间计算字符串的 Python SQLITE3 SELECT 查询不起作用

python - 保存和恢复 Pandas 显示选项

.htaccess - Codeigniter 产品在没有 index.php 的本地服务器上运行良好,但在服务器上不起作用