跳转到主要内容

用于与Meteobridge气象数据记录器通信的Python包装器

项目描述

PyMeteoBridgedata数据记录器Python包装器

Latest PyPI version Supported Python

此模块通过Meteobridge数据记录器使用他们的模板脚本进行通信。

该模块主要编写用于在Home Assistant中作为meteobridge的定制集成使用,但也可能用于其他目的。

安装

PyMeteoBridgedata可在PyPi上获取

pip install pymeteobridgedata

使用方法

此库主要设计用于在异步上下文中使用。

库的主要接口是PyMeteoBridgedata.MeteobridgeApiClient。此接口需要6个选项

  • username:(必需)登录到您的Meteobridge设备的用户名。默认为meteobridge
  • password:(必需)您的Meteobridge设备的密码。
  • ip_address:(必需)Meteobridge设备的IP地址。
  • units:(可选)有效选项为metricimperial。Metebridge设备始终以公制单位提供数据,因此只有在未选择公制时才会进行转换。默认值为metric
  • extra_sensors:(可选)连接到Meteobridge记录器的额外传感器数量(默认为0,最大为7)
  • homeassistant:(可选)有效选项为TrueFalse。如果设置为True,则某些单位类型将不会进行转换,因为Home Assistant将处理该转换。默认值为True

示例 Python 脚本

import asyncio
import logging
import time

from pymeteobridgedata import MeteobridgeApiClient, Invalid, NotAuthorized, BadRequest
from pymeteobridgedata.data import DataLoggerDescription, ObservationDescription

_LOGGER = logging.getLogger(__name__)

async def main() -> None:
    logging.basicConfig(level=logging.DEBUG)
    start = time.time()

    meteobridge = MeteobridgeApiClient(USERNAME, PASSWORD, IP_ADDRESS, homeassistant=False, units="imperial", extra_sensors=0)
    try:
        await meteobridge.initialize()

    except Invalid as err:
        _LOGGER.debug(err)
    except NotAuthorized as err:
        _LOGGER.debug(err)
    except BadRequest as err:
        _LOGGER.debug(err)

    data: DataLoggerDescription = meteobridge.device_data
    if data is not None:
        for field in data.__dataclass_fields__:
            value = getattr(data, field)
            print(field,"-", value)

    data: ObservationDescription = await meteobridge.update_observations()
    if data is not None:
        for field in data.__dataclass_fields__:
            value = getattr(data, field)
            print(field,"-", value)


    end = time.time()

    await meteobridge.req.close()

    _LOGGER.info("Execution time: %s seconds", end - start)

asyncio.run(main())

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分布

pymeteobridgedata-0.1.20.tar.gz (13.9 kB 查看哈希值)

上传时间 源代码

构建分布

pymeteobridgedata-0.1.20-py3-none-any.whl (12.9 kB 查看哈希值)

上传时间 Python 3

由以下提供支持