首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在24小时内从动态加载的网页中抓取超过5万个数据点?

如何在24小时内从动态加载的网页中抓取超过5万个数据点?
EN

Stack Overflow用户
提问于 2020-06-18 05:33:20
回答 2查看 70关注 0票数 2

我正在使用selenium python,我想知道如何在24小时内有效地抓取超过50,000个数据点。例如,当我在网页'insight.com‘上搜索产品时,抓取器大约需要3.5秒来搜索产品并获取其价格,这意味着对于大量数据,抓取器需要几天时间。从使用线程同时查找多个产品的一部分,我还可以如何加速这个过程?我只有一台笔记本电脑,将不得不同时抓取其他六个类似的网站,因此不想要太多的线程,计算机的运行速度将显着减慢。人们如何实现在如此短的时间内抓取大量数据?

EN

回答 2

Stack Overflow用户

发布于 2020-06-18 05:40:15

如果您不再使用selenium模块,而是使用更时尚、更优雅的模块,比如requests,那么您可以在几分钟内完成这项工作。

如果你成功地对正在处理的请求进行反向工程,并自己发送它们,你可以将其与线程配对,以每秒抓取大约50个“数据点”,或多或少(取决于一些因素,如处理和互联网连接速度)。

票数 3
EN

Stack Overflow用户

发布于 2020-08-31 09:36:36

找到一个API并使用它!web抓取和API的目标都是访问web数据。

Web抓取允许您通过使用web抓取软件从任何网站提取数据。另一方面,API为您提供了对所需数据的直接访问。

因此,您可能会发现自己处于这样一种情况:可能没有API来访问您想要的数据,或者对API的访问可能太有限或太昂贵。

在这些情况下,只要数据在网站上可用,web抓取就允许您访问这些数据。

例如,您可以使用web抓取器从Amazon提取产品数据信息,因为它们不提供API来访问这些数据。然而,如果你能访问API,你可以抓取你想要的所有数据,超级快!这类似于在prem上的数据库中进行查询,这是非常快和非常有效的,而不是刷新网页,等待所有元素加载,直到所有元素都加载完毕,然后才能使用数据,然后执行then.do。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62438727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档