我正在使用 Python 的 HTMLParser 和 BeautifulSoup 来解析 Yahoo 财务数据。已经有一个非常好的包可以做到这一点,但它没有得到“有形价格/账面价值”,也就是说它在计算账面价值时包括商誉和其他无形资产。因此,我被迫推出自己的解决方案。
它一直不漂亮。这是代码
from BeautifulSoup import BeautifulSoup
import urllib2
from HTMLParser import HTMLParse
class data(HTMLParser):
def handle_data(self, data):
print data
parser = data()
url='http://finance.yahoo.com/q/bs?s=BAC&annual'
response = urllib2.urlopen(url)
html = response.read()
soup=BeautifulSoup(html)
tangibles=[str(parser.feed(str(soup('strong')[24:26])))]
这有两个问题:1)我依赖数据总是在雅虎页面上的同一个地方,这不是最大的问题,但并不让我高兴,2)真正的问题;
tangibles=[str(parser.feed(str(soup('strong')[24:26])))]
是一个空列表,因为“数据”类只是打印我想要的东西而不是存储它。
如果您为我回答第 2 部分),我会很高兴。我还不懂课。