Cliente de Plataforma de Analítica UMAMI de Prescidente e Prescisão de Privacidade, com base em httpx e pydantic .
umami-analytics destina-se a adicionar dados personalizados à sua instância de Umami (auto-hospedado ou SaaS). Muitos eventos umami podem ser fornecidos diretamente a partir do HTML por meio de seus atributos data-* . No entanto, alguns não podem. Por exemplo, se você tiver um evento acionado no seu aplicativo, mas não possui uma ação clara de HTML, você pode adicionar eventos personalizados. Eles aparecerão na parte inferior da sua página da UMAMI Analtytics para um site.
Um exemplo é um evento de compra de compras que acontece profundamente dentro do código Python, e não no HTML no treinamento do Talk Python. É assim que nossa seção de eventos se parece em um dia típico de fim de semana (tempo do Pacífico dos EUA):
A API UMAMI é extensa e muito disso se destina ao seu código de front -end para poder funcionar. Você provavelmente não quer ou precisa disso. umami-analytics cobre apenas o subconjunto que a maioria dos desenvolvedores precisará de ações comuns de SaaS, como adicionar eventos personalizados. Dito isto, os PRs são Weclome.
Veja o exemplo de uso abaixo para a API Python em torno desses recursos.
? O Async é suportado, mas não é necessário para o seu código Python. Para funções que acessam a rede, existe uma variante func() e func_async() que funciona com o Python's async and await .
Basta 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 ()Esta listagem de código é um código PSUDO de alta fidelidade muito muito. Se você deseja um exemplo realmente executável, consulte o cliente de exemplo no repo.
Consulte a documentação da API para que os pontos de extremidade restantes sejam adicionados. Os PRs são bem -vindos. Mas abra um problema primeiro para ver se o recurso proposto se encaixa na direção desta biblioteca.
Aproveitar.