gpt4 book ai didi

python - gevent 和 soksipy

转载 作者:行者123 更新时间:2023-12-01 05:54:10 24 4
gpt4 key购买 nike

我想知道是否有人尝试过使用 [gevent][1] 和 [socksipy][2] 进行并发下载。

最佳答案

我使用 gevent 从 yfrog、instagram、twitpic 等下载了大约 12k 张图片。图片的累积大小约为 1.5Gb,在我家的 wifi 上下载全部图片大约需要 20 分钟。

为此,我实现了一个 image_download 函数,其唯一目的是从给定的 URL 下载图片,然后在 image_download 函数上异步映射 URL 列表,使用gevent.Pool

from gevent import monkey
monkey.patch_socket() # See http://www.gevent.org/gevent.monkey.html
import gevent

NB_WORKERS = 50

def image_download(url):
# retrieve image

def parallel_image_download(urls): # urls is of type list
""" Activate NB_WORKERS Greenlets to asynchronously download the images. """
pool = gevent.Pool(NB_WORKERS)
return pool.map(image_download, urls)

注意:经过几次尝试,我决定使用 50 个并行工作人员。过了50,总运行时间并没有增加。

关于python - gevent 和 soksipy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13272397/

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