python - 漂亮的汤从 HTML 源代码中提取数据?
问题描述
我试图从网页“ https://finance.yahoo.com/quote/1928.HK/financials?p=1928.HK ”中提取“Reported EPS Basic ”。运行我的代码后,数据 0.23、0.2 以如下格式出现,如何从以下源代码中提取这些数字?
"div class="D(tbc) Ta(end) Pstart(6px) Pend(4px) Bxz(bb) Py(8px) BdB Bdc($seperatorColor) Miw(100px) Miw(156px)--pnclg" 数据测试="fin-col" data-reactid="292">0.23
div class="D(tbc) Ta(end) Pstart(6px) Pend(4px) Bxz(bb) Py(8px) BdB Bdc($seperatorColor) Miw(100px) Miw(156px)--pnclg Bgc($lv1BgColor) fi-row:h_Bgc($hoverBgColor)" data-test="fin-col" data-reactid="293">0.20
我的代码:
url="https://finance.yahoo.com/quote/1928.HK/financials?p=1928.HK"
result = requests.get(url)
result.raise_for_status()
result.encoding = "utf-8"
src = result.content
soup = BeautifulSoup(src, 'lxml')
#soup = BeautifulSoup(src, 'html5lib')
#print(soup.prettify())
print(soup)
with open('soup.txt','w') as f:
f.write(str(src))
解决方案
尝试这个,
import requests
import bs4
url = 'https://finance.yahoo.com/quote/1928.HK/financials?p=1928.HK'
data = requests.get(url)
soup = bs4.BeautifulSoup(data.text,'html.parser')
soup.find_all('div',attrs={"data-reactid":"292"})[0].text
soup.find_all('div',attrs={"data-reactid":"293"})[0].text
推荐阅读
- c# - 如何从 aar Xamarin 库绑定中排除内部 jar?
- php - Woocommerce 产品永久链接和图片查询
- wpf - 如何使用 Pure XAML 将文件添加到我的绑定 ListView
- azure - 从服务总线队列中检索消息时出错
- jquery - jQuery ui datepicker 在 IOS 外部单击时不会消失
- maven - 在执行生命周期的 maven 命令中排除父级及其子级或模块
- android - Android IllegalAccessError 到我的类方法
- django - 赛普拉斯拖放测试
- javascript - 有没有办法可以在按钮中的 2 个 onclick 上分配 2 个单独的功能?
- spring - 为什么在关闭Eureka的情况下使用Zuul + Ribbon时路由会有延迟?