Python 如何更快地查找HTTP状态?

Python 如何更快地查找HTTP状态?,python,csv,url,parallel-processing,http-status-codes,Python,Csv,Url,Parallel Processing,Http Status Codes,我有一个10GB大小的文件。该文件主要包含URL。我正在尝试获取每个URL的HTTP状态代码,并将它们存储到另一个扩展名为.CSV的文件中。 我搜索了一段代码,找到了一个使用Python访问URL状态代码的解决方案: import requests request = requests.get('http://www.example.com') print(request.status_code) 但它有一个URL。我有一个更大的文件。我不知道如何将URL从文件输入到该命令。甚至如何以.CSV

我有一个10GB大小的文件。该文件主要包含URL。我正在尝试获取每个URL的HTTP状态代码,并将它们存储到另一个扩展名为
.CSV
的文件中。
我搜索了一段代码,找到了一个使用Python访问URL状态代码的解决方案:

import requests
request = requests.get('http://www.example.com')
print(request.status_code)
但它有一个URL。我有一个更大的文件。我不知道如何将URL从文件输入到该命令。甚至如何以
.CSV
格式存储输出
甚至它也不快。我正在寻找一个更快的解决方案,该解决方案将为10 GB文件提供更快的结果。
我还尝试了Ubuntu命令:

xargs -n1 -P 10 curl -o /dev/null --silent --head --write-out '%{url_effective},%{http_code}\n' < Input_File.txt > output.CSV

希望这有助于理解我的查询。

curl可以做什么,python请求通常可以做什么,而且做得更好。和curl一样,它也有一个方法


如果您的机器足够强大,请尝试使用Python进行多处理。设置URL的公共队列,然后建立从公共队列获取URL的N个进程。@谢谢您的建议。我朋友的文件大小仍然是10GB。或者过一段时间会更多。你认为我应该做多少个过程和多少个拆分。我正在寻找一个多功能一体的解决方案,以执行任何文件大小更快。我不希望该程序需要几天才能完成的工作。我想要几个小时。如果你不想涉猎Python。@Jaffer Wilson 10GB是一个很大的数字,如果这是一个一次性任务,你可以将整个文件分成几个部分,并使用多台计算机执行多处理Python脚本,我相信时间成本是可以接受的。但如果这是一项长期任务,我的建议是分布式系统。是的,你是对的,但问题是我不知道如何一次传递多个URL以进行处理,并向ubuntu中的Python或Curl命令提供输出。我试过很多东西,但都有同样的问题。一次只有一个URl。我想提供多个URL,比如一次100个。。我的文件大小是10 GB…只有在同一台服务器上同时使用多个URL才会更快。另一方面,连接建立开销仍然存在。在处理完所有10GB数据后,您可能会节省大约30秒。我有一堆URL,只需检查它们是否存在。它们不在同一台服务器上。它们也来自不同的位置。然后就像我前面的评论一样,向python请求或curl发送一堆URL不会有任何区别。您真正需要的是一个分布式系统,或者至少是多个线程以并行方式发出请求
http://google.com,200  
http://example.com,503  
import requests
response = requests.head('http://www.example.com')
print(response.status_code)