極めて簡潔なPythonのウェブページのキャプチャプログラムは、ヤフー財経から株式データを自動的にキャプチャします.

1986 ワード

このプログラムはPython 2.7.6を用いて作成され、Pythonが持参したHTML Parserを拡張し、予め設定された株コードリストに基づいて、Yahoo Financeからリストのデータ日付、株名、リアルタイムオファー、当日変化率、当日最低価格、当日最高価格を自動的に取得します.
Yahoo Financeの株式ページの数値には対応するidがあるからです.
例えばナスダック100指数ETF(QQ)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文字列に基づいてデータを検索する.具体的にはHTML Parserを継承し、カスタムサブクラスにhandle_を再ロードします.data(self,data)メソッドは、対応するid文字列(例えば、リアルタイム見積のid文字列が「yfs_l 84_」+株コード)を含むHTMLタグを検索し、このHTMLタグのデータ(例えばqqqの87.49サンプル出力:
データは
データ日付株式コード株式名リアルタイム見積日変動率日最低価格日最高価格
05/05/2014	ibb	iShares Nasdaq Biotechnology (IBB)	233.28	1.85%	225.34	233.28
05/05/2014	socl	Global X Social Media Index ETF (SOCL)	17.48	0.17%	17.12	17.53
05/05/2014	pnqi	PowerShares NASDAQ Internet (PNQI)	62.61	0.35%	61.46	62.74
05/05/2014	xsd	SPDR S&P Semiconductor ETF (XSD)	67.15	0.12%	66.20	67.41
05/05/2014	ita	iShares US Aerospace & Defense (ITA)	110.34	1.15%	108.62	110.56
05/05/2014	iai	iShares US Broker-Dealers (IAI)	37.42	-0.21%	36.86	37.42
05/05/2014	vbk	Vanguard Small Cap Growth ETF (VBK)	119.97	-0.03%	118.37	120.09
05/05/2014	qqq	PowerShares QQQ (QQQ)	87.95	0.53%	86.76	87.97
05/05/2014	ewi	iShares MSCI Italy Capped (EWI)	17.86	-0.56%	17.65	17.89
05/05/2014	dfe	WisdomTree Europe SmallCap Dividend (DFE)	62.33	-0.11%	61.94	62.39
05/05/2014	pbd	PowerShares Global Clean Energy (PBD)	13.03	0.00%	12.97	13.05
05/05/2014	eirl	iShares MSCI Ireland Capped (EIRL)	38.52	-0.16%	38.39	38.60

本プログラムのソース:https://bitbucket.org/lsz/html-parser HTML Parserの公式説明ドキュメント:https://docs.python.org/2/library/htmlparser.html HTML Parser(HTMLドキュメント要素の解析)http://blog.csdn.net/hxsstar/article/details/17241709