Python连接MQTT服务器订阅和发布主题-Python物联网开发
一、前言在物联网开发中掌握MQTT可以说是一项必备的技能要使用Python连接MQTT服务器、订阅和发布主题我们需要导入paho-mqtt库。二、实现代码在之前的文章中我们也介绍了JAVA是如何连接MQTT服务器实现发布和订阅主题的功能的因此此处不再赘述。文章链接JAVAAndroid实现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(fReceived message {message.payload.decode()}) # 创建MQTT客户端实例 client mqtt.Client() # 设置消息接收的回调函数 client.on_message on_message # 连接到MQTT服务器 client.connect(mqtt_broker_address, mqtt_broker_port, keepalive60) # 订阅主题 client.subscribe(subscribe_topic) # 启动MQTT客户端的循环等待接收消息 client.loop_start() #发送Hello字符串 message_payloadhello client.publish(publish_topic, message_payload) while True: time.sleep(1) # 断开MQTT连接 不执行 client.loop_stop() client.disconnect()三、功能演示我们使用MQTTBox工具连接免费MQTT服务器后订阅和发布报文测试功能。可以看到功能完美实现。