EDINET APIを使って、神戸物産(3038)の売上と純利益の過去5年分をpythonで取得してみた。

EDINET APIを使って、神戸物産(3038)の売上と純利益の過去5年分をpythonで取得してみた。

EDINET(電子開示システム)を使って、決算書分析(ファンダメンタル分析)してみた!

EDINET APIキー取得は、SMS認証が必要!
ブラウザのポップアップ設定で、https://api.edinet-fsa.go.jp を許可しないと、氏名と電話番号が入力できず、APIキーが取得できない!

EDINET APIの検索条件が日付だけしかなくて、証券コードで検索できないのって、おかしくない!?
こんな感じで、日付だけしか検索条件に入れられない…。
https://api.edinet-fsa.go.jp/api/v2/documents.json?date=2023-06-28&type=2&Subscription-Key=XXXXXXX

しょうがないので、過去5年分の日付(365*5=1825回)で、その日の提出リストを取得してきて、pythonで、SQLiteに保存してみた。

ここまでやって、ようやくダウンロードリストのIDが取得できた!
secCodeが銘柄コード+最後に0を追加らしい

docType
120 有価証券報告書/130 訂正有価証券報告書
140 四半期報告書 /150 訂正四半期報告書
180 臨時報告書 /190 訂正臨時報告書

以下のdocIDが取得できた。S100SP8Xが一番新しいので、それを使おう
S100F0RM
S100HUKA
S100KL8G
S100NAJY
S100Q1QH
S100SP8X

docIDを指定して、type=5がCSVファイル指定。ダウンロードすると
https://api.edinet-fsa.go.jp/api/v2/documents/S100SP8X?type=5&Subscription-Key=XXXXXX

S100SP8X_5.zipがダウンロードされて、5ファイル入ってた。
jpaud-aai-cc-001_E02999-000_2023-10-31_01_2024-01-31.csv
jpaud-aar-cn-001_E02999-000_2023-10-31_01_2024-01-31.csv
jpaud-qrr-cc-001_E02999-000_2024-01-31_01_2024-03-15.csv
jpcrp030000-asr-001_E02999-000_2023-10-31_01_2024-01-31.csv
jpcrp040300-q1r-001_E02999-000_2024-01-31_01_2024-03-15.csv

このCSVファイルから、売上を取得するには
要素ID=jpcrp_cor:NetSalesSummaryOfBusinessResults
コンテキストID=CurrentYearDuration_NonConsolidatedMember
の値を取得するpythonを組まないと…。

参考URL
https://zenn.dev/tomodo_ysys/articles/edinet-chatgpt-financial-report
https://qiita.com/shunyaorad/items/7b53653caad514457f59

EDINET APIを使って、神戸物産(3038)の売上と純利益の過去5年分をpythonで取得してみた。

売上:446858000000 1.1310226478896055
売上:395092000000 1.0655928710905893
売上:370772000000 1.1101157505823458
売上:333994000000 1.2063860143396363
売上:276855000000
純利益:20560000000 0.9869431643625192
純利益:20832000000 1.0632911392405062
純利益:19592000000 1.302053565494783
純利益:15047000000 1.2480922362309224
純利益:12056000000

EDINETのAPI、データ形式が分かりづらすぎて辛い…。