Pythonによる株価のスクレイピングの方法を解説します。またスクレイピングしたデータで、ローソク足チャートの作成方法を解説します。ローソク足チャートは、日足、週足、月足の方法を解説します。
環境
Anacondaをインストールして、Jupyternotebookで実行します。環境構築の方法は以下の記事を参考ください。
スクレイピングの方法
スクレイピングには以下の方法を用います。
pandas_datareader.data
pandas_datareaderのインストール方法
以下をの場合は、Windowsコマンドプロンプトで、Macの場合はターミナルで入力してください。
pip install pandas-datareader
pandas_datareaderによるスクレイピングの方法
以下のコードでスクレイピング可能です。
importで使用するライブラリを呼び出します。- 変数
nowに現在の日付をdatetime型で代入します。 startにendから365日前の日付をdatetime型で代入します。pdr.DataReader(str(code)+'.jp', 'stooq', start, end)で、指定したコードの株価を取得することができます。kabukaにget_kabukaで取得した株価データを代入します。
import pandas_datareader.data as pdr
import datetime
import pandas as pd
#現在から、指定の日付までの株価を取得する場合
now = datetime.date.today()
end = now
start = end - datetime.timedelta(days=365)#365日分取得
code = 7751#銘柄のコードを入力ください。7751はキヤノン
#株価取得を関数化
def get_kabuka(code,start,end):
pd_data = pdr.DataReader(str(code)+'.jp', 'stooq', start, end)
return pd_data
kabuka = get_kabuka(code,start,end)
kabuka = kabuka.iloc[::-1]
出力結果
open,High,Low,Close,Volumeが格納されていますね。
- Open:始値
- High:高値
- Low:安値
- Close:終値
- Volume:取引量
kabuka.head()

ローソク足チャートの作成方法(日足)
ローソク足チャートの作成には以下の方法を用います。
mplfinance
mplfinanceのインストール方法
以下をの場合は、Windowsコマンドプロンプトで、Macの場合はターミナルで入力してください。
pip install mplfinance
mplfinanceによるローソク足チャートの作成方法
以下のコードでローソク足チャートの作成が可能です。
importで使用するライブラリを呼び出しますmpf.plot()でローソク足チャートの作成しますfigratioでローソク足チャートとボリュームの画角サイズの比率を決定しますvolume=Trueでボリュームを表示mav=(5, 25,75)で5,25,75で移動平均線を引くstyle='yahoo'でyahooスタイルで表示
import mplfinance as mpf
import matplotlib.pyplot as plt
%matplotlib inline
#ローソク足チャートを作成する
mpf.plot(kabuka, type='candle', figratio=(12,4),
volume=True, mav=(5, 25,75), style='yahoo')
出力結果
綺麗なローソク足チャートを描くことができます。

ローソク足チャートの作成方法(週足、月足)
ローソク足チャートの作成方法(週足)
以下で、計算に必要なパラメータの名前に変更します。
d_ohlcv = {'Open': 'first',
'High': 'max',
'Low': 'min',
'Close': 'last',
'Volume': 'sum'}
resample('W-MON', closed='left', label='left').agg(d_ohlcv)で週足データに変換
#週足
d_ohlcv = {'Open': 'first',
'High': 'max',
'Low': 'min',
'Close': 'last',
'Volume': 'sum'}
kabuka_w = kabuka.resample('W-MON', closed='left', label='left').agg(d_ohlcv)
ローソク足チャートの作成方法(月足)
resample('M', closed='left', label='left').agg(d_ohlcv)で月足データに変換
#月足
d_ohlcv = {'Open': 'first',
'High': 'max',
'Low': 'min',
'Close': 'last',
'Volume': 'sum'}
kabuka_m = kabuka.resample('M', closed='left', label='left').agg(d_ohlcv)
mpf.plot(kabuka_m, type='candle', figratio=(12,4),
volume=True, mav=(5, 25,75), style='yahoo')
出力結果
ローソク足チャートの作成方法(週足)

ローソク足チャートの作成方法(月足)

もっとスクレイピングを学びたい方
本でスクレイピングを学ぶ方法
スクレイピングをもっと学びたい方は以下の本がおすすめです。
Pythonクローリング&スクレイピング ―データ収集・解析のための実践開発ガイド― | 加藤 耕太 | 工学 | Kindleストア | Amazon
Amazonで加藤 耕太のPythonクローリング&スクレイピング ―データ収集・解析のための実践開発ガイド―。アマゾンならポイント還元本が多数。一度購入いただいた電子書籍は、KindleおよびFire端末、スマートフォンやタブレットなど、...
created by Rinker
¥3,520
(2026/05/10 13:03:42時点 楽天市場調べ-詳細)
Udemyでスクレイピングを学ぶ方法





コメント
[…] Pythonによる株価のスクレイピングとグラフ化(ローソク足チャート化)の方法Pythonによる株価のスクレイピングの方法を解説します。またスクレイピングしたデータで、ローソク足チャ […]
[…] Pythonによる株価のスクレイピングとグラフ化(ローソク足チャート化)の方法Pythonによる株価のスクレイピングの方法を解説します。またスクレイピングしたデータで、ローソク足チャ […]