株式投資をしていると、有価証券報告書を読んで分析する必要があります。
日本の会社の有価証券報告書は、EDINET という所からダウンロードできるようになっているのですが、 SSL 証明書が 政府認証基盤(GPKI) なので、ブラウザーによっては認証局を追加しないと警告がでたりして面倒です。
そのそも Webサイトをブラウザーで開いて、検索して、ダウンロードボタンを押してと、結構手間がかかって面倒くさいです。
もちろん探すと、いつくつかそれを簡単にできるようにしてあるサイトやサービスがあるのですが、どれも本格的すぎて今ひとつ僕の要求とは一致しませんでした。
そこで node.js でコマンドラインで証券コード又は EDINET で指定しただけで、簡単にダウンロードできる CLI コマンドを作りました。
EDINETでは、平成31年3月下旬からEDINETに提出された書類を取得するAPI(EDINET API)の提供を予定しています。
ということで、それ以降だと、簡単に API を呼び出して書類を取得できそうですが、今はまだできないので
を利用して、ごりごり スクレイピング をすることにしました。
一応 npm として公開してあるのでもしよろしけば使ってみて下さい。
インストール方法
- Node.js は 8.11 以上のものをインストールしてください
開発は、 ubuntu デスクトップ上で、10.8.0 Current で開発しています。
動作確認は Windows Server 2016 と macOS High Sierra でも行っています。
- コマンドをインストールします。
グローバルではなくて適当なディレクトリを作ってそこに入れた方が良いでしょう。
$ mkdir 適当なディレクトリ $ cd 適当なディレクトリ $ npm i @toycode/getufo
使い方の例
$ npx getufo はてな E32141, 39300, 株式会社はてな, カブシキガイシャハテナ, Hatena Co., Ltd
$ npx getufo E02144
- 株式会社バンダイナムコホールディングスの有価証券報告書・四半期報告書の XBRL を ZIP で固めたものと、pdf 形式の物を新しい順に4つダウンロードします。(7832はバンダイナムコホールディングスの証券コード)
$ npx getufo 7832
- 引数を何も与えないとヘルプを表示します。
$ npx getufo Usage: getufo [options] <codes> Download financial statements from EDINET. Options: -v, --version output the version number -f, --folder [folder] Set download folder (default: current working directory) -n, --numpdf [num] How many pdf files to download (default: 4) -h, --help output usage information Codes are either security codes, EDINET codes or fund codes. Extra: Enter a part of the company name instead of the code to display a list of codes. (In this case, nothing is downloaded.)
リンク
GitHub - HiroshiOkada/getufo: Download securities reports from EDINET
以上です。