【发布时间】:2021-07-15 17:41:19
【问题描述】:
我只是 python 网络抓取的初学者,想从 yahoo Finance 获取股票价格。 这是我的代码
from bs4 import BeautifulSoup
import requests
stock="TSLA"
r = request.get(f"https://ca.finance.yahoo.com/quote/{stock}")
soup = BeautifulSoup(r, "lxml")
#Price
Price= soup1.find("span", class_="Trsdu(0.3s) Fw(b) Fz(36px) Mb(-4px) D(ib)").text
print("Price:"+ Price)
但问题是 request.get 给出了 404 页面未找到。
print(r.text)
OUTPUT: <Response [404]>
请帮我解决这个问题。我需要使用标头和用户代理吗?还是 cookie 阻止了我?
【问题讨论】:
-
这可能是用户代理的事情。如果我删除“ca”。从域它工作正常。
-
您正在抓取整个网页以获得一个股票价格?请阅读ethical web scraping。并考虑使用stock market data API。
-
没问题,数据正在使用 pandas 生成。如果您更喜欢这种方式,那么我可以给出解决方案。
-
@Fazlul 我很高兴看到您的解决方案,请分享。
-
好的。谢谢@meet
标签: python web-scraping python-requests