使用Python控制小米智能插座

使用 python-miio 控制小米智能插座(示例与 Token 获取)

本文介绍如何使用 python-miio 控制小米智能插座,并演示如何获取设备的 IP 与 Token。

快速安装

安装 python-miio

python -m pip install python-miio

使用示例(Python)

请将下列示例中的 IPTOKEN 替换为你自己的设备信息:

from miio.device import Device

# 替换为你的设备 IP 和 Token
IP = "192.168.31.59"
TOKEN = "1f96ab0exxxxxxxxxxx"
device = Device(IP, TOKEN)

# 查看设备状态
result = device.send("get_properties", [{'did': 'MYDID', 'siid': 2, 'piid': 1}])
print(result)  # [{'did': 'MYDID', 'siid': 2, 'piid': 1, 'code': 0, 'value': False}]

# 打开
result = device.send("set_properties", [{'did': 'MYDID', 'siid': 2, 'piid': 1, 'value': True}])
print(result)

# 关闭
result = device.send("set_properties", [{'did': 'MYDID', 'siid': 2, 'piid': 1, 'value': False}])
print(result)

获取设备 Token 与 IP(使用 Xiaomi-cloud-tokens-extractor)

推荐使用 Piotr Machowski 的工具来从小米云中提取本地设备 Token。操作步骤如下:

  1. 克隆仓库并进入目录:
git clone https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor.git
cd Xiaomi-cloud-tokens-extractor
  1. 安装依赖:
pip3 install -r requirements.txt
  1. 运行提取脚本(按提示登录并选择服务器):
python3 token_extractor.py

运行示例(实操输出)示意:

  • 按提示选择登陆方式(密码或扫码)。扫码后页面会显示 QR 地址,扫码登录后会列出你在该服务器(如 cn)下的家庭与设备列表。
  • 输出示例会包含设备名称、ID、MAC、IP、TOKEN、MODEL 等信息,例如:
NAME:     Mijia Smart Plug 3
ID:       20xxxxxxxx
MAC:      14:D8:xx:xx:xx:10
IP:       192.168.31.59
TOKEN:    1f96ab0xxxxxxxxxxxxxx
MODEL:    cuco.plug.v3

常见问题与提示

  • 无法连接/获取信息:确认脚本运行机器与设备在同一局域网内,且 IP 和 Token 正确无误。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容