更快地处理 URL Python

Posted

技术标签:

【中文标题】更快地处理 URL Python【英文标题】:Process URLs faster Python 【发布时间】:2018-04-11 00:53:33 【问题描述】:

我需要从显示拍卖实时价格数据的各种 URL 中抓取 html。我已经有一个要检查的预组装 URL 列表,并且目前有一个工作脚本。问题是处理时间不是很长(每个 URL 约 1.5-2 秒)。

我将 selenium 与 chrome 驱动程序一起使用并以无头运行作为提高速度的选项。最大的问题(以及我使用 selenium 的原因)是我使用的网站具有严格的登录安全性(CSRF 令牌以及验证码谜题)。需要登录网站才能显示实时价格。

我不想尝试绕过登录。相反,我正在做的是加载一个带头的 chrome 窗口,手动登录一次,保存 cookie。启动各种数量的无头 chrome 窗口并加载 cookie,因此我已经登录,然后开始我的业务网络抓取。这是可行的,但是,我想以某种方式使用 urllib 或真正的无头浏览器来实现这一点,而不是让 chrome 无头(我觉得这样会更快)。

如果我有办法手动登录并以某种方式将 cookie 加载到不同的无头浏览器中,那将是理想的。

谢谢。

【问题讨论】:

【参考方案1】:

如果您正在寻找正常的抓取,您可以选择 Beautifulsoup 库之类的东西。否则你可以选择scrapy 框架。但是据我了解,Beautifulsoup 足以满足您的要求。

【讨论】:

谢谢,但我认为不会。我需要使用带头浏览器手动登录

以上是关于更快地处理 URL Python的主要内容,如果未能解决你的问题,请参考以下文章

Selenium 中的多线程/多处理

如何使用多核处理更快地运行 glm 功能

更快地处理WebSocket数据

如何在 spark scala 中更快地处理 .gz 文件?

如何使用 Python scrapy 处理多个 URL

在Python中处理大型文件的最快方法