本程序使用Python 2.7.6编写,扩展了Python自带的HTMLParser,自动根据预设的股票代码列表,从Yahoo Finance抓取列表中的数据日期、股票名称、实时报价、当日变化率、当日最低价、当日最高价。
由于Yahoo Finance的股票页面中的数值都有相应id。
例如纳斯达克100指数ETF(QQQ)http://finance.yahoo.com/q?s=qqq
其中实时报价的HTML标记为
<span id="yfs_l84_qqq">87.49</span>
而标普500指数ETF(SPY)http://finance.yahoo.com/q?s=spy
其中实时报价的HTML标记为
<span id="yfs_l84_spy">187.25</span>
因此本数据抓取程序根据相应的id字符串来查找数据。具体来说就是先继承HTMLParser,然后在自定义的子类中重载handle_data(self, data)方法,查找包含相应id字符串(例如实时报价的id字符串为"yfs_l84_"+股票代码)的HTML标记,并输出这个HTML标记中的数据(例如qqq的<span id="yfs_l84_qqq">87.49</span>,其中的数据87.49就是实时报价。)
样本输出:
数据依

本文介绍了一个使用Python 2.7.6编写的网页抓取程序,该程序通过扩展HTMLParser库,能从Yahoo Finance获取股票列表中的数据,包括数据日期、股票名称、实时报价、变化率、最低价和最高价。程序根据股票代码和特定的HTML id字符串定位并提取数据。提供了源代码链接和HTMLParser官方文档参考。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



