web-scraping - 使用 BeautifulSoup 抓取网页,为什么没有输出?
问题描述
输出应该是:
标准普尔 500 指数
3,824.68
import requests
from bs4 import BeautifulSoup
import ssl
url = "https://www.bloomberg.com/quote/SPX:IND"
html = requests.get(url)
soup = BeautifulSoup(html.content, "html.parser")
name_box = soup.find("h1", attrs={"class": "name"})
name = str(name_box)
print(name)
price_box = soup.find("div", attrs={"class": "price"})
price = str(price_box)
print(price)
解决方案
HedgeHog 是正确的,请求页面存在问题。以下是对程序抓取部分的一些修复
name_box = soup.find("h1", attrs={"class": "companyName__99a4824b"})
name = name_box.text
print(name)
price_box = soup.find("span", attrs={"class": "priceText__1853e8a5"})
price = price_box.text
print(price)
推荐阅读
- c - 在 UDP 客户端(乒乓球)中接收消息的问题
- javascript - lodash - 按嵌套项计数过滤集合
- amazon-web-services - AWS S3 文件同步在 Github 操作中失败,但在本地运行良好
- node.js - 如何在续集中连接列?
- android - ViewPager2 + 辅助功能 + 对讲问题,同时尝试更改焦点并使用滑动手势滚动
- asp.net-mvc - 无法让 EventAggregator 在 ASP.NET 中与 AutoFac 一起使用
- eclipse - 如何在运行另一个之前等待 eclipse 工作区作业完成?
- python - 从子类继承的python3装饰器方法
- google-chrome - 在 Google Chrome 中调试实验性 WebAssembly externref 错误
- c++ - C++:获取路径的对象并打印它们