概要

EDINET(Electronic Disclosure for Investors’ NETwork)は金融庁が運営する電子開示システムで、上場企業の有価証券報告書を XBRL 形式でダウンロードできる。edinet-xbrl ライブラリを使えば、複雑な XBRL 仕様を意識せずに Python でデータを抽出できる。

必要なもの

  • EDINET API キー(EDINET API で取得)
  • Python 3.x
  • edinet-xbrl ライブラリ(pip install edinet-xbrl

基本的な使い方

1
2
3
4
5
6
7
8
9
from edinet_xbrl.edinet_xbrl_parser import EdinetXbrlParser

parser = EdinetXbrlParser()
edinet_xbrl_object = parser.parse_file("path/to/file.xbrl")

# 総資産の取得例
assets = edinet_xbrl_object.get_data_by_context_ref(
    "jppfs_cor:Assets", "CurrentYearInstant"
).get_value()

主要な財務タクソノミキー

key内容
jppfs_cor:Assets総資産
jppfs_cor:NetSales売上高
jppfs_cor:OperatingIncome営業利益
jppfs_cor:OrdinaryIncome経常利益

jppfs_cor は日本 GAAP 財務諸表のタクソノミ名前空間。context_refCurrentYearInstant は当期末時点を指す。

EDINET API から書類を取得する

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import requests

url = "https://api.edinet-fsa.go.jp/api/v2/documents.json"
params = {
    "date": "2024-03-31",
    "type": 2,  # 書類メタデータ
    "Subscription-Key": "YOUR_API_KEY"
}
response = requests.get(url, params=params)
documents = response.json()
# documents["results"] から docID を取得

バフェット・コードとの関係

バフェット・コードは同様のパイプライン(EDINET/TDNET → XBRL パース → RDB 格納)を活用した企業分析 SaaS。edinet-xbrl ライブラリ自体も BuffettCode 社が OSS 公開している。Web API、スプレッドシート連携、MCP サーバーなどを通じて財務データにアクセス可能。

関連ページ

  • DuckDB — 取得した財務データの高速集計に活用可能

ソース記事