いろいろコードを試行錯誤していましたが、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)
取得した値を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 # 年初来安値