gpt4 book ai didi

python - 如何通过Python多线程提高性能

转载 作者:太空宇宙 更新时间:2023-11-03 19:36:58 28 4
gpt4 key购买 nike

我是 Python 和多线程新手,所以请耐心等待。

我正在编写一个脚本,通过 Web of Trust 处理列表中的域,该服务根据“可信度”对网站进行 1 到 100 的排名,并将它们写入 CSV。不幸的是,Web of Trust 的服务器可能需要相当长的时间才能响应,并且处理 100k 域可能需要几个小时。

到目前为止,我在多线程方面的尝试一直令人失望——试图从this answer修改脚本。给出了线程错误,我相信是因为某些线程花了太长时间才能解决。

这是我未经修改的脚本。有人可以帮助我进行多线程处理,或者向我指出一个好的多线程资源吗?提前致谢。

import urllib
import re

text = open("top100k", "r")
text = text.read()
text = re.split("\n+", text)

out = open('output.csv', 'w')

for element in text:
try:
content = urllib.urlopen("http://api.mywot.com/0.4/public_query2?target=" + element)
content = content.read()
content = content[content.index('<application name="0" r="'):content.index('" c')]
content = element + "," + content[25] + content[26] + "\n"
out.write(content)
except:
pass

最佳答案

快速浏览一下 WoT API 文档就会发现,除了您正在使用的 public_query2 请求之外,还有一个 public_query_json 请求可以让您批量获取最多 100 个数据。我建议您在开始之前使用它大量并行请求淹没了他们的服务器。

关于python - 如何通过Python多线程提高性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3120438/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com