gpt4 book ai didi

python - BeautifulSoup 中未显示表元素

转载 作者:行者123 更新时间:2023-11-28 00:43:59 25 4
gpt4 key购买 nike

我正在尝试从 this web site 中提取表数据

代码如下--

import requests
from bs4 import BeautifulSoup as bs

page = requests.get('https://www.vitalityservicing.com/serviceapi/Monitoring/QueueDepth?tenantId=1')

soup = bs(page.text, "html.parser")

#None of the following method works
tb = soup.table
#tb = soup.body.table
#tb = soup.find_all('table')

当我尝试打印 tb 时它的None

所以我试着查看 body下载的 HTML 与

print(soup.body.prettify())

我没有看到 table元素或其子元素。只有<body><script>元素存在:

Output of print(soup.body)

但是当我在 chrome 中检查页面时,我看到了所有元素:

table and it's child elements present while inspecting

我不明白为什么 table未使用 requests.get 下载元素当我在 chrome 上加载页面时它在那里

最佳答案

您没有获得该内容,因为当您执行请求时,它不存在于页面中。 还有

如果您检查脚本标记之间的 javascript 代码,您可以看到它正在动态生成表格。因此,您会在此之前收到 html 代码,因为 requests 不是浏览器并且不会执行 js,并且您看不到表格。

既然您知道为什么看不到表格,下一个问题就是如何在 javascript 执行后生成 HTML。别晕,是可行的。您可能会在 this question 中找到解决方案有趣的。

祝你好运

关于python - BeautifulSoup 中未显示表元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51897756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com