python订阅MQTT消息

项目背景: 最近一直在做物联网这块的事情,记录一下python订阅MQTT的demo.

安装mqtt

pip install paho-mqtt
#!/usr/bin/python
# -*- coding: utf-8 -*

import paho.mqtt.client as mqtt
import json

# 服务器地址
host = '8.8.8.8'
# 通信端口 默认端口1883
port = 1883


username = 'admin'=
password = 'admin'

# 订阅主题名
topic = 'test/iot/admin'


# 连接后事件
def on_connect(client, userdata, flags, respons_code):
    if respons_code == 0:
        # 连接成功
        print('Connection Succeed!')
    else:
        # 连接失败并显示错误代码
        print('Connect Error status {0}'.format(respons_code))

    # 订阅信息
    client.subscribe(topic)


# 接收到数据后事件
def on_message(client, userdata, msg):
    # 打印订阅消息主题
    # print("topic", msg.topic)
    # 打印消息数据
    print("msg payload", json.loads(msg.payload))


def main_demo():
    client = mqtt.Client()

    # 注册事件
    client.on_connect = on_connect
    client.on_message = on_message

    # 设置账号密码(如果需要的话)
    client.username_pw_set(username, password=password)

    # 连接到服务器
    client.connect(host, port=port, keepalive=60)

    # 守护连接状态
    client.loop_forever()


if __name__ == '__main__':
    main_demo()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值