Skip to main content

台灣交通部「TDX運輸資料流通服務平臺」之python介接套件

Project description

TDX Proxy

台灣交通部「TDX運輸資料流通服務平臺」之python介接套件

TDX Proxy 將與 TDX 平台之介接流程簡化,只要給予 Client ID 與 Secret Key,便能直接對 TDX 平台之 API 進行呼叫。

一個簡單範例:

from tdx_proxy import TDXProxy

proxy = TDXProxy(app_id=YOUR_TDX_ID, app_key=YOUR_TDX_KEY)

result = proxy.get(TDX_SERVICE_URL)

Installing TDX Proxy

$ pip install motc-tdx-proxy

需求 python 3.9+

Features

  • 自動進行身分驗證並取得 Access Token
  • Access Token 快取機制,只在過期或驗證錯誤時再自動重新取得 Token
  • 自動處理 TDX 呼叫頻率限制

Documentation

Initialize Proxy

初始化 Proxy 可將 ID 與 KEY 直接作為參數帶入,或使用 credential 檔案

# 直接帶入參數
proxy = TDXProxy(app_id=YOUR_TDX_ID, app_key=YOUR_TDX_KEY)

# 使用 credential 檔案
# file_name 若不指定,將會使用環境變數 TDX_CREDENTIALS_FILE 作為路徑
proxy = TDXProxy.from_credential_file(file_name=YOUR_CREDENTAIL_FILE)

其中 credential 檔案為 Json 檔,格式如下

{
    "app_id": YOUR_ID,
    "app_key": YOUR_KEY
}

Calling TDX API

使用 TDXProxy.get() 呼叫 TDX API,回傳為 requests.Response 物件

result = proxy.get('v3/Rail/TRA/DailyTrainTimetable/TrainDates')

Parameters:

  • url - str,TDX API URL,不須包含 base 以及 parameter ,如下所述
  • url_base - str,預設為 'https://tdx.transportdata.tw/api/basic/'
  • encoded_parameter - str,預設為 '?$format=JSON'
  • headers - dict,額外的 headers 如 If-Modified-Since,proxy 本身會在呼叫 API 時加入 authorization header,不需要再額外放入參數

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

motc-tdx-proxy-0.0.2.tar.gz (4.7 kB view hashes)

Uploaded Source

Built Distribution

motc_tdx_proxy-0.0.2-py3-none-any.whl (4.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page