Přeskočit na obsah

Knihovna pro Python

Balíček hamapi pro Python stahuje historická data (datalogy) vašich zařízení. Přečte řádky za vás a vrátí jeden seznam hodnot pro každé měření. Můžete jej volně používat (licence MIT).

Terminál
pip install hamapi

Potřebujete Python 3.6 nebo novější. Balíček také nainstaluje requests a 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: získáte jej na stránce Účet v aplikaci. Viz REST API.
  • 'e11:123': sériové číslo zařízení. Potřebujete oprávnění ke čtení zařízení.
  • start, end: unixový čas v sekundách.
  • averaging_step: volitelné. Balíček vrátí jednu průměrnou hodnotu pro každý krok o tomto počtu sekund. S hodnotou 0 (výchozí) dostanete všechny řádky.

get_datalog_data vrací slovník:

  • timestamp: čas každé hodnoty v unixových sekundách.
  • Jeden seznam pro každé měření a každý výstup zařízení. Klíčem je kód měření (například T). Kódy jsou na stránce Slovník měření.

Všechny seznamy mají stejnou délku. Bez averaging_step mají seznamy jeden bod navíc těsně před každou změnou. Graf tak zobrazí schody.

  • ham.get_user_devices(): zařízení vašeho účtu. Jsou to stejná data jako z get_user_devices.php.
  • Balíček ukládá stažené minulé dny do souboru .cached.db v aktuální složce. Tyto dny znovu nestahuje. Chcete-li je stáhnout znovu, smažte soubor.
  • Balíček čte pouze historii. Pro živá data viz stránku Živá data (WebSocket).
  • Balíček obsahuje definice zařízení ze své verze. Pro nové typy zařízení jej aktualizujte příkazem pip install -U hamapi.
  • Stránka balíčku: pypi.org/project/hamapi.
Chat s podporou