YahooFinanceSpider
Intro.
日本のヤフーファイナンスから株価データをスクレイピングするプログラム
jsmがメンテーナンスしていないため,新たなスクレイピングプログラムを作った
jsmを参考した上で,lxmlとmultiprocessingを使って速度を改善した
mutiprocessingパッケージ使ってスクレイピングを加速するので,python3.5以上が必要
スクレイピングはヤフーのサーバに負荷をかけるので,悪意の使用はやめてください
Installation
pip3 install YahooFinanceSpider
Useage
Crawlerインスタンス作成
import YahooFinanceSpider as y
c = y.Crawler()
このCrawlerインスタンスを使ってデータをダンロードする
銘柄情報の取得
brand = c.get_brand_info(sector_code)
sector_codeは以下のまとめになる
'1050' # 鉱業
'2050' # 建設業
'3050' # 食料品
'0050' # 農林・水産業
'3150' # パルプ・紙
'3200' # 化学
'3250' # 医薬品
'3300' # 石油・石炭製品
'3350' # ゴム製品
'3400' # ガラス・土石製品
'3450' # 鉄鋼
'3100' # 繊維製品
'3500' # 非鉄金属
'3550' # 金属製品
'3600' # 機械
'3650' # 電気機器
'3700' # 輸送機器
'3750' # 精密機器
'3800' # その他製品
'4050' # 電気・ガス業
'5050' # 陸運業
'5100' # 海運業
'5150' # 空運業
'5200' # 倉庫・運輸関連業
'5250' # 情報・通信
'6050' # 卸売業
'6100' # 小売業
'7050' # 銀行業
'7100' # 証券業
'7150' # 保険業
'7200' # その他金融業
'8050' # 不動産業
'9050' # サービス業
株価データの取得
# 日毎のデータを取得
price = c.get_price(code, start_time, end_time, y.DAILY)
# 週間のデータを取得
price = c.get_price(code, start_time, end_time, y.WEEKLY)
# 月間のデータを取得
price = c.get_price(code, start_time, end_time, y.MONTHLY)
使用例
# 農林水産業の銘柄情報を取得
brand = c.get_brand_info('0050')
# 全銘柄情報を取得
brand = c.get_brand_info()
# リストからインスタンスを取り出す
for i in brand:
print(i.code)
from datetime import datetime
start_time = datetime(2018,1,1)
end_time = datetime(2018,8,8)
# 上記期間の銘柄コード1301会社の株価データを取得
# 全銘柄の銘柄コードはget_brand_info()で獲得できる
price = c.get_price('1301', start_time, end_time, y.DAILY)
# リストからインスタンスを取り出す
for i in price:
print(i.close)
DataType
get_brand_info()の返すDataType
Brand
Brand.code # 銘柄コード
Brand.market # 市場
Brand.brand # 銘柄名
Brand.intro # 銘柄情報
get_price()の返すDataType
Price
Price.date # 日時
Price.open # 始値
Price.high # 高値
Price.low # 安値
Price.close # 終値
Price.volume # 出来高
Price.adj_close # 調整後終値
データが無いとき,Noneを返す
TopixPrice
TopixPrice.date # 日時
TopixPrice.open # 始値
TopixPrice.high # 高値
TopixPrice.low # 安値
TopixPrice.close # 終値
データが無いとき,Noneを返す
Release files for YahooFinanceSpider 0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| YahooFinanceSpider-0.3.tar.gz | 5.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| YahooFinanceSpider-0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size:11.8 kB
Release files / YahooFinanceSpider-0.3.tar.gz
| Download URL | YahooFinanceSpider-0.3.tar.gz |
|---|---|
| Size | 5.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ccf37dcee33759d8880d53cfd50df123ae9eabd53050b649166afae9761af060
|
|
BLAKE2b-256 checksum How to use checksums |
cc95d252178831e3b793d09e6dc9a897b14588d7854c10b1058fbf95ee4b8dcf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.6
|
Release files / YahooFinanceSpider-0.3-py3-none-any.whl
| Download URL | YahooFinanceSpider-0.3-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d81cd2cf032804fb71f36772e07244bf534faddc804698c97b739cb3c41e7afc
|
|
BLAKE2b-256 checksum How to use checksums |
3f2548dad7b43f5d1bcb721bfd0e31e505f36f6febc53000ad9e0fd07cfe59d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.6
|