首页 > 解决方案 > 使用 BeautifulSoup 抓取网页,为什么没有输出?

问题描述

输出应该是:

标准普尔 500 指数

3,824.68

项目链接在这里: https ://www.freecodecamp.org/news/how-to-scrape-websites-with-python-and-beautifulsoup-5946935d93fe/

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)

标签: web-scrapingbeautifulsouppython-3.8

解决方案


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)

推荐阅读