如何解决使用 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)
解决方法
会发生什么?
您得到输出 None
是因为您不会在响应中找到您想要的数据。
检查回复,您将获得以下信息:
我们检测到您的计算机网络存在异常活动。到 继续,请单击下面的框让我们知道您不是 机器人。
可以看看这个alternative
,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)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。