スクレイピング(Scraping)とはWEBページから必要な情報を抜き出す作業をいいます。 今回はYahoo Japanファイナンスのページから日経平均株価を抜き出すプログラムを作成してみました。

Yahooホームページから日経平均株価を取得するプログラム
# プログラム名:scray01.py
# WEBページをスクレイピングするために BeatifulSoupライブラリを使用する
import urllib.request as request
from bs4 import BeautifulSoup
import pandas as pd
from datetime import datetime,timedelta,timezone
# Yahoo ファイナンスのURL
ur1 = 'https://stocks.finance.yahoo.co.jp/stocks/detail/?code=998407.O'
response = request.urlopen(ur1)
bs = BeautifulSoup(response,'html.parser')
#日経平均株価が格納されている位置
stoksPrice = bs.select('.stoksPrice')[1].text
print(stoksPrice)
実行結果
ec2-user:~/environment/scray $ python scray01.py 22,173.14
日経平均株価を取得する事ができました。 プログラムの実行結果とホームページ記載の株価に差異があるのは、どちらもリアルタイムの情報を取得しているからです。 この方法ですと株価の時系列分析を行うために、データを日々、蓄積していく必要があるので実用性がありません。 あくまで、本プログラムは表示されているホームページの特定カラムの情報を取得する仕組みです。
実際に株価の時系列分析を行う場合は、データをまとめて収集する必要があります。 1949年から現在までのデータを一括収集できるプログラムを現在作成中です。
(追記 2019.4.25) FREDから直接データをダウンロードできることが判明しました。






