Skip to content

Tool Kit¤

其餘沒有分類的所有工具包都放在這裡。

tool_kit ¤

FUNCTION DESCRIPTION
check_module_installed

檢查指定的模組是否安裝,並選擇性地驗證其版本

setup_retry

允許使用者修改全局預設重試配置

retry

通用自動重試工具裝飾器,支援返回值緩存與全局預設配置

get_chrome_version_unix

獲取 Chrome 的版本(Unix 系統)

get_chrome_version_windows

獲取 Chrome 的版本(Windows 系統)

get_chrome_version

根據操作系統獲取 Chrome 的版本

cleanup

立即清除敏感資料

check_module_installed ¤

check_module_installed(
    modules: str | list[str], version: str | list[str] | None = None, raise_error: bool = True
) -> list[str] | None

檢查指定的模組是否安裝,並選擇性地驗證其版本

PARAMETER DESCRIPTION
modules

要檢查的模組名稱,單一模組名稱或模組名稱列表

TYPE: str | list[str]

version

可選的版本號,若提供,則檢查每個模組的版本是否匹配 若為單一字串,則對所有模組使用相同版本,若長度不匹配則略過後續版本比較

TYPE: str | list[str] | None DEFAULT: None

raise_error

若模組未安裝或版本不匹配,是否引發錯誤 預設為 True。若為 False,則返回報告

TYPE: bool DEFAULT: True

RETURNS DESCRIPTION
list[str] | None

list[str] | None: 若有問題,返回問題列表,若 raise_error 為 False 則返回 None

RAISES DESCRIPTION
ImportError

如果任何模組未安裝或不符合版本要求

VersionConflict

如果模組安裝,但版本不匹配

setup_retry ¤

setup_retry(max_retries: int = 3, delay: int | float = 1)

允許使用者修改全局預設重試配置

retry ¤

retry(
    max_retries: int | None = None,
    delay: int | float | None = None,
    backoff: float = 2.0,
    exceptions: tuple[type[BaseException], ...] = (Exception,),
    max_duration: int | float | None = None,
    alert_threshold: int | None = None,
    log_func: Callable[[str], None] = print,
)

通用自動重試工具裝飾器,支援返回值緩存與全局預設配置

參數: - max_retries: 最大重試次數,若未提供則使用全局預設值 - delay: 初始延遲時間(秒),若未提供則使用全局預設值 - backoff: 指數退避係數,默認為 2.0(每次重試延遲時間翻倍) - exceptions: 捕捉並重試的異常類型,默認為 (Exception,) - max_duration: 重試總時間上限(秒),超過時間則終止重試,默認為 None - alert_threshold: 重試警戒線(次數),超過後觸發警告,默認為 None - log_func: 日誌函數,用於記錄重試信息,默認為 print

get_chrome_version_unix ¤

get_chrome_version_unix(chrome_path: str) -> str | None

獲取 Chrome 的版本(Unix 系統)

get_chrome_version_windows ¤

get_chrome_version_windows() -> str | None

獲取 Chrome 的版本(Windows 系統)

get_chrome_version ¤

get_chrome_version(system: str, chrome_path: str) -> str | None

根據操作系統獲取 Chrome 的版本

PARAMETER DESCRIPTION
system

操作系統,Windows、Darwin 或 Linux

TYPE: str

chrome_path

Chrome 執行檔的路徑

TYPE: str

RETURNS DESCRIPTION
str | None

str | None: 返回 Chrome 版本,若無法獲取則返回 None

cleanup ¤

cleanup(sensitive_data: list[bytes]) -> None

立即清除敏感資料

PARAMETER DESCRIPTION
sensitive_data

敏感資料的位元組列表

TYPE: list[bytes]