4

在抓取网站时,哪个更可取:使用 curl 还是使用 Python 的 requests 库?

我最初计划使用请求并明确指定用户代理。但是,当我使用它时,我经常会收到“HTTP 429 请求过多”错误,而使用 curl,它似乎可以避免这种情况。

我需要更新 10,000 个标题的元数据信息,并且我需要一种方法以并行方式下拉每个标题的信息。

使用每个下拉信息的优缺点是什么?

4

3 回答 3

3

Since you want to parallelize the requests, you should use requests with grequests (if you're using gevent, or erequests if you're using eventlet). You may have to throttle how quickly you hit the website though since they may do some ratelimiting and be refusing you for requesting too much in too short a period of time.

于 2013-01-27T21:18:38.987 回答
2

使用请求将允许您以编程方式执行此操作,这应该会产生更清洁的产品。

如果你使用 curl,你正在执行更慢的 os.system 调用。

于 2013-01-27T20:56:34.990 回答
0

任何一天我都会通过外部程序购买语言版本,因为它不那么麻烦。

只有当它变得不可行时,我才会退回到这个。始终认为人的时间比机器时间更有价值。无论如何,这种应用程序中的任何“性能提升”都可能会被网络延迟所淹没。

于 2013-01-27T20:58:20.520 回答