gpt4 book ai didi

javascript - Python 网页抓取 : BeautifulSoup not showing all html source content

转载 作者:行者123 更新时间:2023-11-28 22:13:43 24 4
gpt4 key购买 nike

我对网页抓取和 python 还很陌生。我正在尝试制作一个脚本,从 http://finra-markets.morningstar.com/BondCenter/BondDetail.jsp?symbol=NFLX4333665&ticker=C647273 获取最后交易价格但是当我用 python 请求它时,有些内容似乎丢失了。 我以前制作过从其他网站成功获取数据的脚本,但我似乎无法让我的代码在这个网站上工作。
这是我目前的代码:

from bs4 import BeautifulSoup
import requests

r = requests.get("http://finra-markets.morningstar.com/BondCenter/BondDetail.jsp?symbol=NFLX4333665&ticker=C647273")
c = r.content
soup = BeautifulSoup(c, "html.parser")

all = soup.find_all("div", {"class": "gr_row_a5"})
print(soup)


当我运行它时,大部分重要数据都丢失了。

任何帮助将不胜感激。

最佳答案

一些网页使用 Javascript 填充数据,看起来是页面内容的内容实际上并不在 Beautiful Soup 正在处理的 HTML 中。这是其中一页。

这令人困惑,因为如果您在(例如)Safari 或 Chrome 中使用 Web 开发人员工具检查显示的页面,您会发现已呈现到 DOM 中的 HTML。但是,如果您查看页面源代码,则根本找不到。

所以对于这个页面,你不能用Beautiful Soup解析出数据。一种选择是以更直接的方式为您提供数据的网站。另一个可能是尝试 requests-html库,它可以运行 Javascript,然后你可以从呈现的 HTML 中抓取数据。 (注意:我自己从未尝试过 requests-html,以这种方式运行 Javascript 时应该小心,但这是一种可行的方式。)还有一些项目已经有人使用 Selenium或类似于获取 HTML 的方式。但是 requests-html 看起来是最直接的尝试。

关于javascript - Python 网页抓取 : BeautifulSoup not showing all html source content,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53753782/

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