最新の株価を取得(JSM) | Visualize the Invisible

Visualize the Invisible

データとAIを使って、混沌とした世界を「見える化」したい。

Yahoo!ファイナンスからWEBスクレイピングで情報を取得しようと思って
いろいろコードを試行錯誤していましたが、Pythonのライブラリを使ったほうが早そう。
ということでjsmというライブラリをインストール


sh-3.2# pip install jsm
Collecting jsm
  Downloading jsm-0.19.tar.gz
Requirement already satisfied (use --upgrade to upgrade): beautifulsoup4 in /System/anaconda/lib/python3.5/site-packages (from jsm)
Collecting html5lib (from jsm)
  Downloading html5lib-0.9999999.tar.gz (889kB)
    100% |████████████████████████████████| 890kB 439kB/s 
Requirement already satisfied (use --upgrade to upgrade): requests in /System/anaconda/lib/python3.5/site-packages (from jsm)
Requirement already satisfied (use --upgrade to upgrade): six in /System/anaconda/lib/python3.5/site-packages (from jsm)
Building wheels for collected packages: jsm, html5lib
  Running setup.py bdist_wheel for jsm ... done
Successfully built jsm html5lib
Installing collected packages: html5lib, jsm
Successfully installed html5lib-0.9999999 jsm-0.19
You are using pip version 8.1.1, however version 8.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.


iPython Notebookにて以下のコードを実行

import jsm
q = jsm.Quotes()
q.get_price(4689)

<date:2016-05-13 06:29:54.274339 open:494 high:497 low:490 close:496 volume:7581700 _adj_close:496>

取得した値をPandasのデータフレームに格納するのは以下でOK
q.get_finance(8031).per

market_cap        # 時価総額shares_issued     # 発行済株式数dividend_yield    # 配当利回りdividend_one      # 1株配当per               # 株価収益率pbr               # 純資産倍率eps               # 1株利益bps               # 1株純資産price_min         # 最低購入代金round_lot         # 単元株数years_high        # 年初来高値years_low         # 年初来安値