一、简介
paho.mqtt.python 是一个面向 Python 的 MQTT 客户端库,它可以方便地实现 MQTT 客户端与 MQTT 代理服务器之间的通信,包括连接、发布、订阅和断开连接。paho.mqtt.python 库是开源的,可以在 GitHub 上找到它的源代码。
二、安装
要安装 paho.mqtt.python 库,可以使用 pip 命令:
pip install paho-mqtt
三、用法
1. 创建客户端
首先,我们需要创建一个 MQTT 客户端对象。可以使用以下代码:
import paho.mqtt.client as mqtt
client = mqtt.Client()
该代码创建了一个 MQTT 客户端对象,并将其存储在变量 client
中。
2. 连接到 MQTT 代理服务器
接下来,我们需要将 MQTT 客户端连接到 MQTT 代理服务器。可以使用以下代码:
client.connect("mqtt.eclipse.org", 1883, 60)
该代码将 MQTT 客户端连接到位于 mqtt.eclipse.org
上的 MQTT 代理服务器,端口为 1883
,超时时间为 60
秒。
3. 发布消息
将 MQTT 客户端连接到 MQTT 代理服务器后,就可以开始发布消息了。可以使用以下代码:
client.publish("topic/test", "Hello, world!")
该代码将消息 Hello, world!
发布到主题 "topic/test"
。
4. 订阅消息
发布消息后,就可以订阅消息了。可以使用以下代码:
client.subscribe("topic/test")
该代码订阅了主题 "topic/test"
,一旦有消息发布到该主题,MQTT 客户端就会收到消息。
5. 处理消息
当 MQTT 客户端收到消息时,就会调用 on_message
回调函数。我们可以使用这个回调函数来处理收到的消息。可以使用以下代码:
def on_message(client, userdata, message):
print("Received message: ", message.payload.decode("utf-8"))
client.on_message = on_message
该代码定义了一个 on_message
回调函数,当 MQTT 客户端收到消息时,就会调用该回调函数。该回调函数将收到的消息打印到控制台。
6. 断开连接
最后,当我们不再需要使用 MQTT 客户端时,需要将其断开连接。可以使用以下代码:
client.disconnect()
该代码将 MQTT 客户端与 MQTT 代理服务器断开连接。
四、总结
paho.mqtt.python 库是一个简单易用的 MQTT 客户端库,它可以方便地实现 MQTT 客户端与 MQTT 代理服务器之间的通信。
项目地址:https://github.com/eclipse/paho.mqtt.python
更多内容请关注:
原文始发于微信公众号(小白这样学Python):让物联网通信更简单:paho.mqtt.python库入门与实践
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/264225.html