umami python
v0.2.17
基於httpx和pydantic的客戶端,用於保護隱私的開源Umami Analytics平台。
umami-analytics旨在將自定義數據添加到您的Umami實例(自託管或SaaS)中。許多鮮味的事件可以通過其data-*屬性直接從HTML提供。但是,有些不能。例如,如果您的應用程序中有一個事件,但沒有明確的HTML操作,則可以添加自定義事件。這些將出現在您網站的Umami Analtytics頁面的底部。
一個例子是一場採購事件,它發生在Python代碼內部,而不是在Talk Python培訓中的HTML中。這就是我們的活動部分在一個典型的周末(美國太平洋時間)的樣子:
Umami API是廣泛的,其中大部分旨在其前端代碼能夠發揮作用。您可能不想要或需要。 umami-analytics僅涵蓋大多數開發人員需要進行常見的SaaS動作(例如添加自定義事件)所需的子集。也就是說,PR是Weclome。
有關這些功能的Python API,請參見下面的用法示例。
?支持異步,但不需要您的Python代碼。對於訪問網絡的函數,有一個func()和func_async()變體,可與Python的async和await 。
只需pip install umami-analytics
import umami
umami . set_url_base ( "https://umami.hostedbyyouorthem.com" )
# Auth is NOT required to send events, but is for other features.
login = umami . login ( username , password )
# Skip the need to pass the target website in subsequent calls.
umami . set_website_id ( 'cc726914-8e68-4d1a-4be0-af4ca8933456' )
umami . set_hostname ( 'somedomain.com' )
# List your websites
websites = umami . websites ()
# Create a new event in the events section of the dashboards.
event_resp = umami . new_event (
website_id = 'a7cd-5d1a-2b33' , # Only send if overriding default above
event_name = 'Umami-Test' ,
title = 'Umami-Test' , # Defaults to event_name if omitted.
hostname = 'somedomain.com' , # Only send if overriding default above.
url = '/users/actions' ,
custom_data = { 'client' : 'umami-tester-v1' },
referrer = 'https://some_url' )
# Create a new page view in the pages section of the dashboards.
page_view_resp = umami . new_page_view (
website_id = 'a7cd-5d1a-2b33' , # Only send if overriding default above
page_title = 'Umami-Test' , # Defaults to event_name if omitted.
hostname = 'somedomain.com' , # Only send if overriding default above.
url = '/users/actions' ,
referrer = 'https://some_url' )
# Call after logging in to make sure the auth token is still valid.
umami . verify_token ()此代碼列表是非常高的保真度PSUEDO代碼。如果您想要一個實際可執行的示例,請參見回購中的示例客戶端。
有關要添加的其餘端點,請參見API文檔。歡迎PR。但是請首先打開一個問題,以查看所提出的功能是否適合該庫的方向。
享受。