一次/并行检索多个URL

Dom*_*ane 9 python parallel-processing screen-scraping

可能重复:
如何在python中使用urllib2加速获取页面?

我有一个下载网页的python脚本,解析它并从页面返回一些值.我需要抓一些这样的页面来获得最终结果.每个页面检索需要很长时间(5-10s),我宁愿并行提出请求以减少等待时间.
问题是 - 哪种机制可以快速,正确地执行,并且CPU /内存浪费最少?扭曲,异步,线程,其他什么?你能提供一些例子的链接吗?
谢谢

UPD:这个问题有一些解决方案,我正在寻找速度和资源之间的妥协.如果你能告诉一些经验细节 - 从你的观点来看它是如何快速负载 - 这将是非常有帮助的.

pyg*_*iel 15

multiprocessing.Pool可以是一个很好的交易,有一些有用的例子.例如,如果您有一个URL列表,则可以以并发方式映射内容检索:

def process_url(url):
    # Do what you want
    return what_you_want

pool = multiprocessing.Pool(processes=4) # how much parallelism?
pool.map(process_url, list_of_urls)
Run Code Online (Sandbox Code Playgroud)