首页 > 解决方案 > 如何使用 python :: style display:none 抓取隐藏的网站

问题描述

我试图抓取网站,但遇到了一个问题:网站中的数据被隐藏了,当我点击“+”号时,它显示了结果。

如何使用 python 抓取这些数据?

    <tr class="ob_gDGC" style="display: none;">

在此处输入图像描述

标签: pythonpython-requestsdata-miningpython-requests-html

解决方案


样式仅表示屏幕显示的内容而不是文档的内容,因此 display:none 不会限制您访问数据。

但是,如果您尝试访问的数据不在 dom 上,那么您就有问题了。在您单击按钮之前,在开发工具中查看该页面以查看数据是否存在。如果您单击按钮并附加子项(或 dom 节点在 google chrome 开发工具中闪烁),则您尝试抓取的网站使用 javascript dom 操作,这很难用 requests 库提取。为此,您将寻找像pyppeteer(或等效)这样的软件包。有了它,您可以获得一个网页并模拟“加号”上的点击事件,然后提取您所需的数据。

我建议您修改您的帖子以使其更清晰,并添加一个您尝试抓取的 dom 示例。


推荐阅读