【发布时间】:2017-03-31 08:45:04
【问题描述】:
我有 630,220 个网址需要打开和抓取。这些 url 本身已被抓取,并且抓取它们要容易得多,因为每个抓取的页面都会返回大约 3,500 个 url。
为了抓取这 630,220 个网址,我目前正在使用线程在 Python 中进行并行抓取。使用 16 个线程,抓取 200 个 url 需要 51 秒。因此,我需要 44 小时才能抓取所有 630,220 个网址,这似乎是处理此问题的一种不必要的耗时且效率极低的方法。
假设服务器不会过载,有没有办法异步发送每秒 1000 个请求之类的东西?这会将总抓取时间减少到大约 10 分钟,这是相当合理的。
【问题讨论】:
标签: python asynchronous web-scraping