跳轉到

so.login 登入

所屬章節:入門 以 2026-08-20 實際執行結果為準

Overview

建立並回傳已初始化的 api 物件。

so.login(person_id, person_pwd, type='account')
  • 帳密登入(預設 type='account'):person_id 與 person_pwd 兩個都要, 缺一會印「登錄失敗」不登入。so.login() 空手呼叫會失敗。
  • google / apple(type='google' / 'apple'):開瀏覽器讓使用者選帳號,不必給帳密。 首次要在瀏覽器認證,之後 72 小時內走本機快取免認證(帳密登入不快取)。
  • 登入結果快取在 ~/.snowyowl/auth.json;api.logout() 清掉,force=True 強制重登。
api = so.login('user@x.com', 'pwd')   # 帳密
# 或 so.login(type='google')          # 開瀏覽器(apple 同理)
回傳 型態 說明
api snowyowl.main.login 已掛好各命名空間的物件,repr 為 Api Instance is ready

Manual Sample Input/Output

Example 1:登入並檢查掛載結果

input

import snowyowl as so
api = so.login('user@x.com', 'pwd')
[n for n in dir(api) if not n.startswith('_')]

output

['Block', 'Data', 'MSMP', 'USData', 'USMSMP', 'bt', 'login', 'logout',
 'person_id', 'person_pwd', 'type']

本版不含即時行情訂閱:api 上沒有 SWQuote / Quote / USQuote / FutQuote。


Example 2:登入訊息逐行說明

output

[2026-08-20 11:05:58] INFO - [v6.4.17]開始執行 TokenManager
[2026-08-20 11:05:58] INFO - 開始執行 貓頭鷹 Token 取得流程
[2026-08-20 11:05:58] INFO - 成功取得 貓頭鷹 Token
正在下載 ...                                    ← 首次或快取過期時更新 MSMP
[系統訊息] MSMP 物件初始化完成。                    ← api.MSMP 可用
[系統訊息] USMSMP 物件初始化完成。                  ← api.USMSMP 可用
[系統訊息] 已將資料存入本地暫存
[系統訊息] Block 積木物件初始化完成。               ← api.Block 可用
[系統訊息] API 加載完成,歡迎使用。

Token 取不到時會印 [系統訊息] Token無效,停止初始化行情與資料, 此時 api.MSMP 仍可用(不需 token),但 api.Data、api.Block、api.bt 都不會掛上去。


Example 3:登出

input

api.logout()

output

(無輸出)

logout() 會清空 api.__dict__,只保留 login 方法本身, 所以登出後可以再 api.login() 重新登入。登出後存取 api.MSMP 會拋 AttributeError。