作者:zhuzhuxiaozhuzhu | 来源:互联网 | 2023-06-14 17:56
原标题:在Django中使用MQTT 在Django中使用MQTT 安装MQTT使用Python MQTT编写Python MQTT脚本在Django项目中启动脚本安装MQTT Python环境下安装
原标题:在Django中使用MQTT
在Django中使用MQTT
- 安装MQTT
- 使用Python MQTT
- 编写Python MQTT脚本
- 在Django项目中启动脚本
安装MQTT
- Python环境下安装MQTT也很简单,需要注意的就是不要输错命令
在Python3环境下安装Python MQTT的命令是:
pip3 install paho-mqtt
使用Python MQTT
编写Python MQTT脚本
代码如下:
import os, sys
import django
os.environ.setdefault('DJANGO_SETTING_MODULE', 'my_django.settings')
django.setup()
import paho.mqtt.client as mqtt
from th文章来源站点https://www.yii666.com/reading import Twww.yii666.comhread
from app名 import models
import time
import json
def on_connect(client, userdata, flag, rc):
print("Connect with the result code " + str(rc))
client.subscribe('test/#', qos=2)
def on_message(client, userdata, msg):
out = str(msg.payload.decode('utf-8'))
print(msg.topic)
print(out)
out = json.loads(out)
if msg.topic == 'test/newdata':
print(out)
def mqttfunction():
global client
client.loop_forever(retry_first_connection=True)
client = mqtt.Client(client_id="test", clean_session=False)
def mqtt_run():
client.on_connectwww.yii666.com = on_connect
client.o文章来源地址41532.htmln_message = on_message
broker = '192.168.1.88'
client.connect(broker, 1883, 62)
client.use文章来源地址41532.htmlrname_pw_set('user', 'user')
client.reconnect_delay_set(min_delay=1, max_delay=2000)
mqttthread = Thread(target=mqttfunction)
mqttthread.start()
if __name__ == "__main__":
mqtt_run()
在Django项目中启动脚本
- 在Django2.1下,只需要在 wsgi.py 中引入要执行的脚本文件,然后执行启动函数即可。
如:
from 存放MQTT脚本的模块 import 脚本名
mqtt_functions.mqtt_run()
来源于:在Django中使用MQTT