Salta ai contenuti

Libreria Python

Il pacchetto Python hamapi scarica i dati storici (datalog) dei Suoi dispositivi. Legge le righe al posto Suo e restituisce una lista di valori per ogni misurazione. Può usarlo liberamente (licenza MIT).

Finestra del terminale
pip install hamapi

Ha bisogno di Python 3.6 o successivo. Il pacchetto installa anche requests e brotli.

import time
import hamapi
ham = hamapi.hamapi(api_key='YOUR_API_KEY')
end = int(time.time())
start = end - 7 * 86400
data = ham.get_datalog_data('e11:123', start, end, averaging_step=120)
print(list(data.keys()))
print(data['timestamp'][:5])
  • api_key: la ottiene nella pagina Account dell’app. Veda l’API REST.
  • 'e11:123': il numero di serie del dispositivo. Ha bisogno del permesso di lettura sul dispositivo.
  • start, end: tempo Unix in secondi.
  • averaging_step: facoltativo. Il pacchetto restituisce un valore medio per ogni passo di questo numero di secondi. Con 0 (il valore predefinito) ottiene tutte le righe.

get_datalog_data restituisce un dizionario:

  • timestamp: l’ora di ogni valore, in secondi Unix.
  • Una lista per ogni misurazione e ogni uscita del dispositivo. La chiave è il codice della misurazione (per esempio T). I codici sono nel Dizionario delle misurazioni.

Tutte le liste hanno la stessa lunghezza. Senza averaging_step, le liste hanno un punto in più subito prima di ogni cambiamento. Così un grafico mostra dei gradini.

  • ham.get_user_devices(): i dispositivi del Suo account. Sono gli stessi dati di get_user_devices.php.
  • Il pacchetto conserva i giorni passati scaricati nel file .cached.db, nella cartella corrente. Non scarica di nuovo questi giorni. Per scaricarli di nuovo, elimini il file.
  • Il pacchetto legge solo lo storico. Per i dati in tempo reale, veda Dati in tempo reale (WebSocket).
  • Il pacchetto contiene le definizioni dei dispositivi della sua versione. Per i nuovi tipi di dispositivo, lo aggiorni con pip install -U hamapi.
  • Pagina del pacchetto: pypi.org/project/hamapi.
Chat con l'assistenza