赞
踩
在物联网开发中,掌握MQTT可以说是一项必备的技能,要使用Python连接MQTT服务器、订阅和发布主题,我们需要导入paho-mqtt库。
在之前的文章中,我们也介绍了JAVA是如何连接MQTT服务器实现发布和订阅主题的功能的,因此此处不再赘述。
文章链接:JAVA&Android实现MQTT上位机软件功能-订阅主题与发布主题
首先,我们需要安装paho-mqtt库,安装方法可以参考:Python使用pip命令安装外部库
具体程序实现代码:
- import paho.mqtt.client as mqtt
- import time
-
- # 定义MQTT服务器的地址和端口
- mqtt_broker_address = "broker.emqx.io" #此处我们使用免费服务器
- mqtt_broker_port = 1883
-
- # 定义订阅和发布的主题
- subscribe_topic = "westbeginer/sub"
- publish_topic = "westbeginer/pub"
-
-
- # 定义回调函数,处理收到的消息
- def on_message(client, userdata, message):
- print(f"Received message '{message.payload.decode()}'")
-
-
- # 创建MQTT客户端实例
- client = mqtt.Client()
-
- # 设置消息接收的回调函数
- client.on_message = on_message
-
- # 连接到MQTT服务器
- client.connect(mqtt_broker_address, mqtt_broker_port, keepalive=60)
-
- # 订阅主题
- client.subscribe(subscribe_topic)
-
- # 启动MQTT客户端的循环,等待接收消息
- client.loop_start()
-
- #发送Hello字符串
- message_payload="hello"
- client.publish(publish_topic, message_payload)
-
- while True:
- time.sleep(1)
-
-
- # 断开MQTT连接 不执行
- client.loop_stop()
- client.disconnect()
我们使用MQTTBox工具,连接免费MQTT服务器后,订阅和发布报文测试功能。
可以看到,功能完美实现。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。