iT邦幫忙

2021 iThome 鐵人賽

DAY 3
1
永豐金融APIs

永豐證API X Python系列 第 3

【D3】發現廚房不能用,需要更換廚房環境: 使用Python 3.8

前言

以為很順暢的,結果發現Python 3.9無法支援,那就只好用3.8囉!因為採了不小的雷,因此要記錄一下。


原本的環境:Python 3.9

很開心的使用pipenv install shioaji安裝我們的shioaji,結果發現悲劇的事情:

Error:  An error occurred while installing shioaji!
Error text: 
ERROR: Could not find a version that satisfies the requirement shioaji (from versions: none)
ERROR: No matching distribution found for shioaji

居然找不到可以用的shioaji...太慘了吧=口=

好吧,那就降版本...
/images/emoticon/emoticon06.gif

新的料理環境:Python 3.7 & 3.8

在網路上看到有人使用Python 3.7,那可以確信3.7可以使用,那就用3.7版。結果可以順利安裝!

安裝步驟

首先安裝好Python虛擬環境,所以要先把Python3.7版安裝在我們電腦裡,我們使用brew,並且指定用安裝3.7版:

brew install python@3.7

安裝完畢後,在我們要執行的目錄下,用pipenv安裝shioaji

Adding shioaji to Pipfile's [packages]...
✔ Installation Succeeded
...(成功了,後面就不顯示了)

不過看到他們釋放很多測試的版本,還滿可愛的...居然這樣釋放出來:

Skipped pre-versions: 0.3.0.dev0, 0.3.0.dev2, 0.3.0.dev3, 0.3.0.dev4, 0.3.0.dev5, 0.3.0.dev7, 0.3.0.dev8, 0.3.0.dev9, 0.3.1.dev1, 0.3.1.dev2, 0.3.1.dev4, 0.3.1.dev6, 0.3.1.dev8, 0.3.2.dev1, 0.3.2.dev2, 0.3.2.dev3, 0.3.2.dev4

既然3.7過了,那就看看3.8吧!

結果3.8也通過,而他們在FB的討論區也有人用3.8版,可見是穩了!如果還是不行,我就要往docker跑了(話說都已經想,再失敗就用Docker了XD)/images/emoticon/emoticon18.gif

開火,看看合不合適

既然建立好環境,安裝好了,接著拿在文件中的範本來登入看看:

import shioaji as sj

api = sj.Shioaji(simulation=True)
api.login(
    person_id="PAPIUSER01",
    passwd="2222",
    contracts_cb=lambda security_type: print(f"{repr(security_type)} fetch done."),
)

結果如下:

Response Code: 0 | Event Code: 0 | Info: host '218.32.76.102:80', hostname '218.32.76.102:80' IP 218.32.76.102:80 (host 1 of 1) (host connection attempt 1 of 1) (total connection attempt 1 of 1) | Event: Session up
<SecurityType.Index: 'IND'> fetch done.

成功囉~/images/emoticon/emoticon07.gif

不過...我在這堆訊息中看到一個悲劇的事情...就是:

warnings.warn("Mac OS currently don't provide ca module all function about placing order is not working.", Warning)

Mac OS居然不能Place Order =口=,那我這樣做API...只能做分析跟做訊號吧...是不是逼我往Docker走...
/images/emoticon/emoticon20.gif


後記

(2022/2/18更新)
現在測試環境無法使用囉,詳情參考:https://ithelp.ithome.com.tw/articles/10284040


上一篇
【D2】要下廚前需要準備鍋具
下一篇
【D4】初步探索廚房器具:登入與帳號
系列文
永豐證API X Python31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
ypochien
iT邦新手 5 級 ‧ 2021-10-24 22:06:40

礙於公司沒有採購MAC憑證資源,目前MAC要下單的確只能先透過Docker

謝謝解說~
姑且不論下單,其他功能與資源就可以做到很多事情囉/images/emoticon/emoticon12.gif

我要留言

立即登入留言