最近開発を行っていないと思い、手始めにyahooファイナンス用のツールを作成する事にした。作成したのはyahooファイナンスから証券コードと会社名を取得しDictionayに格納するツールである。
#-*- coding=utf-8 -*- from BeautifulSoup import BeautifulSoup import requests import re """yahooFinance get stockCode and CompanayName""" def main(): companyCode=[] companyName=[] for loop in range(1,3): page=1 while True: res=requests.get("http://info.finance.yahoo.co.jp/ranking/?kd=%s&tm=d&vl=a&mk=1&p=%s" % (loop,page)) bs=BeautifulSoup(res.text) if len(bs.findAll("td")) > 0: for line in bs.findAll("td"): if line.a != None and re.compile("\d{4}").match(line.a.text.encode("utf-8")): companyCode.append(line.a.text.encode("utf-8")) for line in bs.findAll("td",attrs={"class":"normal yjSt"}): companyName.append(line.text.encode("utf-8")) page += 1 else: break stockDict=dict(zip(companyCode,companyName)) if __name__ == '__main__': main()
内容としてはyahooファイナンスの値上がり率ランキングと値下がり率ランキングからデータを取得するというシンプルな物である。とりあえず次はこのモジュールを使用して各会社の相関係数を取得するツールを作成したい。