首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >网络刮取股票数据

网络刮取股票数据
EN

Stack Overflow用户
提问于 2020-01-11 17:45:04
回答 1查看 105关注 0票数 0

我正试图从雅虎金融公司( yahoo )为一只给定的etf/共同基金,在网络上刮取该行业的权重和持有量。在使用BeautifulSoup时,我很难确定要找到什么。例如:

代码语言:javascript
复制
import bs4 as bs
import urllib.request
ticker='SPY'
address=('https://finance.yahoo.com/quote/'+ticker+
             '/holdings?p='+ticker)
source = urllib.request.urlopen(address).read()      
soup = bs.BeautifulSoup(source,'lxml')
sector_weights = soup.find()

我可以很好地阅读地址,当我检查网站时,我想要突出显示的部分是:

代码语言:javascript
复制
<div class="MB(25px) " data-reactid="18">

但是,当我尝试soup.find_all('div', class_='MB(25px) ')时,它会返回一个空列表。

我也想做同样的事情,但同样的问题出现了。

如果有人知道有任何好的网站,以刮地区的信息,这将是非常感谢,晨星没有可悲的工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-12 01:00:48

‘Mb(25 Mb)’应该‘Mb(25 Mb)’

名称是区分大小写的,您需要删除文字中的尾随空格。当我进行这两项更改时,您的代码就可以工作了。

我还必须删除解析器引用,让BeautifulSoup使用默认的解析器html.parser,因为当我使用解析器引用时,代码会崩溃。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59697040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档