python mqtt 客户端的实现代码实例

yipeiwu_com6年前Python基础

这篇文章主要介绍了python mqtt 客户端代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

安装paho-mqtt

pip install paho-mqtt -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

python消息收发实现

import paho.mqtt.client as mqtt
from multiprocessing import Process
import camera_person_num

MQTTHOST = "172.19.4.4"
MQTTPORT = 1883
mqttClient = mqtt.Client()
# 连接MQTT服务器
def on_mqtt_connect():
  mqttClient.connect(MQTTHOST, MQTTPORT, 60)
  mqttClient.loop_start()
# 消息处理函数
def on_message_come(lient, userdata, msg):
  print(msg.topic + ":" + str(msg.payload.decode("utf-8")))
  # 消息处理开启多进程
  p = Process(target=talk, args=("/camera/person/num/result", msg.payload.decode("utf-8")))
  p.start()
# subscribe 消息订阅
def on_subscribe():
  mqttClient.subscribe("test", 1) # 主题为"test"
  mqttClient.on_message = on_message_come # 消息到来处理函数
# publish 消息发布
def on_publish(topic, msg, qos):
  mqttClient.publish(topic, msg, qos);
# 多进程中发布消息需要重新初始化mqttClient
def talk(topic, msg):
  cameraPsersonNum = camera_person_num.CameraPsersonNum(msg)
  t_max, t_mean = cameraPsersonNum.personNum()
  mqttClient = mqtt.Client()
  mqttClient.connect(MQTTHOST, MQTTPORT, 60)
  mqttClient.loop_start()
  mqttClient.publish(topic, '{"max":' + str(t_max) + ',"mean:"' + str(t_mean) + '}', 1)
def main():
  on_mqtt_connect()
  on_subscribe()
  while True:
    pass
if __name__ == '__main__':
  main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解django中url路由配置及渲染方式

详解django中url路由配置及渲染方式

今天我们学习如何配置url、如何传参、如何命名、以及渲染的方式,内容大致有以下几个方面。 创建视图函数并访问 创建app django中url规则 捕获参数 路径转...

对python PLT中的image和skimage处理图片方法详解

对python PLT中的image和skimage处理图片方法详解

用PLT比较轻量级,用opencv是比较重量级 import numpy as np from PIL import Image if __name__ == '__main__'...

tensorflow学习笔记之简单的神经网络训练和测试

tensorflow学习笔记之简单的神经网络训练和测试

本文实例为大家分享了用简单的神经网络来训练和测试的具体代码,供大家参考,具体内容如下 刚开始学习tf时,我们从简单的地方开始。卷积神经网络(CNN)是由简单的神经网络(NN)发展而来的,...

Python功能键的读取方法

本文实例讲述了Python功能键的读取方法。分享给大家供大家参考。具体分析如下: 先getch一下得到a,如果等于0或者224,就说明是功能键,再getch下一个得到b,那么这个功能键的...

numpy 返回函数的上三角矩阵实例

numpy 返回函数的上三角矩阵 np.triu() matrix2=np.triu(matrix1) numpy.triu(m, k=0)[source] Upper tri...