首页 > 解决方案 > 如何在 python 中抓取动态网站(不使用 selenium)

问题描述

Selenium 是否有任何库或替代方法可以从动态(javascript 渲染)网站中抓取数据?

我遇到的问题是,许多网站可以很容易地检测到我何时使用带有 selenium 的 webdriver。我已经完成了一些事情,例如在我的 webdrver 中更改我的 cdc_ 变量,但我仍然被检测到。我一直在研究使用 Selenium 无法检测到的方法,但这似乎是不可能的。

所以,我正在寻找一种不使用 Selenium 来抓取动态网站的方法。任何建议都有帮助。

谢谢!

标签: pythonseleniumselenium-webdriverweb-scrapingselenium-chromedriver

解决方案


如果您不想使用selenium抓取动态网站。我知道的两种方法:

  1. 找到ajax API并发送GET请求。那只能使用requests模块或urllib模块可以做到这一点。(我推荐这个,但需要采取一些措施。)

  2. 如果您的python版本> = 3.6,您可以尝试使用requests-html模块。据我所知,它可以获得一些由JavaScript呈现的文本。


推荐阅读