EDINETのXBRL用のPythonライブラリを作った - ダウンロード編


1. はじめに

前回の話

前回のエントリ『EDINETのXBRL用のPythonライブラリを作った - Parser編』では、「そもそもEDINETとかXBRLって何なのか」と、XBRLのファイルをparseしてPythonのオブジェクト化し、財務数値をいい感じに取得する方法について述べた。

下記の方法でのxbrl取得は、有報キャッチャー ウェブサービス AtomAPI サービス終了に伴い、実行不可能となりました。

今回

今回は、有報キャッチャー ウェブサービス AtomAPIという、EDINET(TDNETも)のデータに便利にアクセスできるREST APIを利用して、特定銘柄のXBRLをダウンロードする方法を紹介する1

2. EDINETのXBRLをPythonでダウンロードする

0.2.0以降のedinet-xbrlは、ダウンロード用のモジュールも備えている。

$ pip install edinet-xbrl

でinstall後、こんな感じでダウンローダーに取得したい銘柄コード(ticker)文字列を渡せば、指定されたディレクトリにEDINETに存在するXBRLファイルがダウンロードできる。

from edinet_xbrl.edinet_xbrl_downloader import EdinetXbrlDownloader

## init downloader
xbrl_downloader = EdinetXbrlDownloader()

## set a ticker you want to download xbrl file
ticker = "1234"
target_dir = "a target directory path"
xbrl_downloader.download_by_ticker(ticker, target_dir)

中身を見れば一目瞭然だが、有報キャッチャーのAPIをラップしただけである(ありがたやありがたや)。

最後に

これを使って大量のXBRLと格闘してバフェット・コードというウェブサービスを作ってるので、興味があればのぞいてみてください。条件検索(いわゆるスクリーニング)とか、わりと頑張って作ったので、edinet-xbrlでダウンロードする銘柄を探したりに使ってください。あ、bug報告とかpull requestとかはGitHubにお気軽にどうぞ。ダウンロードしたXBRLはparser編を参考にして頂ければ、いい感じにゴニョゴニョできるはず。
ライブラリの使い方がわからない、XBRLについて相談したいことがある等についてはTwitterからお気軽にご連絡いただければと思います(DMでも大丈夫です)。

注釈等


  1. XBRLは仕様が決まっているXMLなので必ずしもダウンロードする必要はないのだが、parseしてゴニョゴニョするにはやっぱり手元に落として期待のが人情というものだと思う