Перейти до вмісту

Бібліотека Python

Пакет Python hamapi завантажує історичні дані (datalogs) ваших пристроїв. Він читає рядки замість вас і дає один список значень для кожного показника. Ви можете використовувати його вільно (ліцензія MIT).

Terminal window
pip install hamapi

Вам потрібен Python 3.6 або новіший. Пакет також встановлює requests і 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: ви отримуєте його на сторінці Обліковий запис застосунку. Див. REST API.
  • 'e11:123': серійний номер пристрою. Вам потрібен дозвіл читання на пристрій.
  • start, end: час Unix у секундах.
  • averaging_step: необов’язково. Пакет дає одне середнє значення для кожного кроку такої кількості секунд. З 0 (за замовчуванням) ви отримуєте всі рядки.

get_datalog_data повертає словник:

  • timestamp: час кожного значення в секундах Unix.
  • Один список для кожного показника і кожного виходу пристрою, з кодом показника як ключем (наприклад T). Коди є в Словнику показників.

Усі списки мають однакову довжину. Без averaging_step списки мають одну додаткову точку безпосередньо перед кожною зміною, щоб графік показував сходинки.

  • ham.get_user_devices(): пристрої вашого облікового запису, ті самі дані, що й у get_user_devices.php.
  • Пакет зберігає завантажені минулі дні у файлі .cached.db у поточній папці. Він не завантажує ці дні знову. Щоб завантажити їх знову, видаліть файл.
  • Пакет читає тільки історію. Для даних у реальному часі використовуйте WebSocket.
  • Пакет містить визначення пристроїв своєї версії. Для нових типів пристроїв оновіть його командою pip install -U hamapi.
  • Сторінка пакета: pypi.org/project/hamapi.
Чат із підтримкою