Библиотека Python
Пакет Python hamapi загружает исторические данные (datalogs) Ваших устройств.
Он читает строки за Вас и даёт один список значений для каждого показания.
Вы можете использовать его свободно (лицензия MIT).
Установка
Заголовок раздела «Установка»pip install hamapiВам нужен Python 3.6 или новее. Пакет также устанавливает requests и brotli.
import timeimport 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.

