iT邦幫忙

2021 iThome 鐵人賽

1
永豐金融APIs

永豐證API X Python系列 第 31

【Day ?(31)】測試環境無法登入

  • 分享至 

  • xImage
  •  

現在測試環境無法登入囉~
該如何是好呢?


無法登入

先前可以使用測試環境與測試帳號登入,如Day3的程式碼:

import shioaji as sj

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

可以取得商品類別資料,表示我們有登入成功(如Day4)。
但是近期使用,卻得到這樣的回應:

(700008ea2000) Connect attempt for host '(遮蔽...) for session '(c0,s1)_sinopac(client name '(遮蔽...)', VPN name 'sinopac', peer address 'hostname '218.32.76.102:80' IP 218.32.76.102:80', connection 'tcp_TxRx' local address 'IP 10.88.22.46:60217')' timed out
pysolace/core/sol.cpp(257): connected failed, return Not ready
[16:47:02.298421] [3077790] [pysolace/core/sol.cpp:445:SendRequest] [E] [thread 3215562] Not ready
Response Code: 0 | Event Code: 2 | Info: Session connect timeout | Event: Session connection attempt failed
Traceback (most recent call last):
  File "(遮蔽路徑...)", line 4, in <module>
    accounts = api.login(
  File "(遮蔽路徑...)", line 133, in login
    accounts = self._solace.login(person_id, passwd, hashed)
  File "shioaji/backend/solace/api.pyx", line 332, in shioaji.backend.solace.api.SolaceAPI.login
  File "(遮蔽路徑...)", line 49, in raise_resp_error
    raise Exception(resp)
Exception: {}

在連線進去後,卻在程式內部出現錯誤。探究原因後,才知道原來他們把測試環境關閉了,因此我們無法使用測試環境進行測試。只能用正式環境的方式進行進行開發與測試,因此要小心別亂下單喔!

正式環境登入

想要在正式環境登入,就先去永豐開戶,取得登入的帳號密碼後,就可以在正式環境使用shioaji。正式環境登入的方式可以參考:https://sinotrade.github.io/tutor/login/,也就是在初始話物件時候,把測試環境的參數拿掉,也就是把api = sj.Shioaji(simulation=True)改成api = sj.Shioaji()即可。

程式可以參考範例:

import shioaji as sj
api = sj.Shioaji()
api.login(
    person_id="YOUR_ID", 
    passwd="YOUR_PASSWORD", 
    contracts_cb=lambda security_type: print(f"{repr(security_type)} fetch done.")
)

後記

在過了這麼久後有人跟我討論,才發現測試環境已經不能用了。真可惜,只能下實單,希望以後能開放,這樣開發的時候不會怕...


上一篇
【D30】結尾:佳餚上桌
系列文
永豐證API X Python31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言