mqtt 客户端 基于Python
这几天一直在搞安全通信,微信小程序,反向代理等等,为了能让自己对整个系统做到把控,主要是需要了解每一个细节的地方,所以今天花了3个小时的时间学习了Python,因为我要用它来做Http和WebSocket ,其实还有就是群里的 "卡狼"一直在说用Python开发8266更方便快捷.
先说学了之后的感受,确实简单,易上手.现在感觉应该比lua开发更快捷,我并没有用它来开发8266,只是感觉语言上很容易接受(对我而言,感觉这个语言吧,和lua有相近的地方(变量操作封装的方法很好),又有点高级语言的味道)
说一下安装软件
软件和源码链接:
https://pan.baidu.com/s/1SauB96RMTZUWv3yxUIgynA
其实和学习java的时候安装虚拟机就可以用记事本写java语言一样,不过记事本多麻烦,敲指令多费时,有些人就用Eclipse这个IDE软件,其实上面的
PyCharm就是一款IDE,不过现在好像很多人在推崇Intellij IDEA,我倒是没用过这款IDE
Python安装教程:
https://baijiahao.baidu.com/s?id=1608325862360990066&wfr=spider&for=pc
PyCharm安装教程:
https://blog.csdn.net/elegentbeauty/article/details/79871440
https://www.cnblogs.com/pupilheart/p/9853071.html
Python基础教程:
http://www.runoob.com/python/python-tutorial.html
(对于一样新知识,可能有些规定的语法和方法不太容易接受,
记住哈:学习某一样知识,你所纠结的不应该是为什么这样规定,为什么那样规定,
你所关心的应该是它的用途,就是可以解决什么问题,知识不是用来背和记的,是用来用的,
秉着自己想解决什么问题去学知识哈
因为我知道Python能解决我当前的问题,所以我一开始没学的时候就接受了它,然后又很快吸收了它)
首先是安装mqtt插件,我百度的网上大部分呢都是用的 paho.mqtt
所以干脆跟着别人的脚步,我也用这个吧!(网上大部分都是敲命令安装,咱有IDE,所以让IDE自己安装)
我就做个最简单的,连接,订阅
import paho.mqtt.client
import time mqtt = paho.mqtt.client def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc)) #打印连接状态
client.subscribe("") #订阅2222 def on_message(client, userdata, msg):
print(msg.topic+" " + ":" + str(msg.payload)) #打印接受的消息 client_id = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))
client = mqtt.Client(client_id) # ClientId不能重复,所以使用当前时间
client.username_pw_set("yang", "") # 必须设置,否则会返回「Connected with result code 」
client.on_connect = on_connect
client.on_message = on_message
client.connect("mnifdv.cn", , )
client.loop_forever()
有什么问题自己百度哈
说一下,很多都是这样
import paho.mqtt.client as mqtt
实际上大家可以百度
意思是 mqtt代替了paho.mqtt.client
我是这样
mqtt = paho.mqtt.client 当然如果您不想用IDE启动,那么
import time import sys
sys.path.append('F:/Python/mqttdemo/venv/Lib/site-packages') import paho.mqtt.client mqtt = paho.mqtt.client def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc)) #打印连接状态
client.subscribe("") #订阅2222 def on_message(client, userdata, msg):
print(msg.topic+" " + ":" + str(msg.payload)) #打印接受的消息 client_id = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))
client = mqtt.Client(client_id) # ClientId不能重复,所以使用当前时间
client.username_pw_set("yang", "") # 必须设置,否则会返回「Connected with result code 」
client.on_connect = on_connect
client.on_message = on_message
client.connect("mnifdv.cn", , )
client.loop_forever()
然后再试一试
或者
import sys
sys.path.append(sys.path[]+'/venv/Lib/site-packages')
sys.path[0] 是返回的是脚本所在的位置,这样比较方便一点
mqtt 客户端 基于Python的更多相关文章
- Python 基于Python实现的ssh兼sftp客户端(下)
基于Python实现的ssh兼sftp客户端 by:授客 QQ:1033553122 otherTools.py #!/usr/bin/env/ python # -*- coding:utf-8 ...
- Python 基于Python实现的ssh兼sftp客户端(上)
基于Python实现的ssh兼sftp客户端 by:授客 QQ:1033553122 实现功能 实现ssh客户端兼ftp客户端:实现远程连接,执行linux命令,上传下载文件 测试环境 Win7 ...
- 使用Surging Mqtt 开发基于WS的MqttClient客户端
原文:使用Surging Mqtt 开发基于WS的MqttClient客户端 最近一段时间由于要做一套智能设备系统,而有幸了解到Surging中的Mqtt broker,学习了很多东西本篇文章基于Su ...
- Python 基于Python及zookeeper实现简单分布式任务调度系统设计思路及核心代码实现
基于Python及zookeeper实现简单分布式任务调度系统设计思路及核心代码实现 by:授客 QQ:1033553122 测试环境 功能需求 实现思路 代码实践(关键技术点实现) 代码模块组织 ...
- Python 基于python操纵zookeeper介绍
基于python操纵zookeeper介绍 by:授客 QQ:1033553122 测试环境 Win7 64位 Python 3.3.4 kazoo-2.6.1-py2.py3-none-any.w ...
- 如何简单实现接口自动化测试(基于 python) 原博主地址https://blog.csdn.net/gitchat/article/details/77849725
如何简单实现接口自动化测试(基于 python) 2017年09月05日 11:52:25 阅读数:9904 GitChat 作者:饿了么技术社区 原文:如何简单实现接口自动化测试(基于 python ...
- Python 基于python操纵redis入门介绍
基于python操纵redis入门介绍 by:授客 QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3.3.2 基于Python操作R ...
- 基于Python项目的Redis缓存消耗内存数据简单分析(附详细操作步骤)
目录 1 准备工作 2 具体实施 1 准备工作 什么是Redis? Redis:一个高性能的key-value数据库.支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使 ...
- 基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0
基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0 目录 1. 开发环境2. 主要功能逻辑介绍3. 框架功能简介 4. 数据库的创建 5. 框架模块详细介绍6. Tes ...
随机推荐
- Python 练习: 简单角色游戏程序
要求: 1.创建三个游戏人物,分别是: 苍井井,女,18,初始战斗力1000 东尼木木,男,20,初始战斗力1800 波多多,女,19,初始战斗力2500 2.游戏场景,分别: 草丛战斗,消耗200战 ...
- python中文编码&json中文输出问题
python2.x版本的字符编码有时让人很头疼,遇到问题,网上方法可以解决错误,但对原理还是一知半解,本文主要介绍 python 中字符串处理的原理,附带解决 json 文件输出时,显示中文而非 un ...
- BZOJ4756: [Usaco2017 Jan]Promotion Counting(线段树合并)
题意 题目链接 Sol 线段树合并板子题 #include<bits/stdc++.h> using namespace std; const int MAXN = 400000, SS ...
- 1474 十进制转m进制
1474 十进制转m进制 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题解 题目描述 Description 将十进制数n转换成m进制数 m ...
- 2017-11-20 中文代码示例之Vuejs入门教程(一)问题后续
"中文编程"知乎专栏原文 第一个issue: Error compiling template if using unicode naming as v-for alias · I ...
- python之初识网络
一. C/S架构:客户端(client)/服务端(server)架构 B/S架构:浏览器(browser) / 服务端(server)架构 软件cs架构: 浏览器,qq,微信等等 硬件cs架构:打印机 ...
- 利用火车头采集A67手机电影教程一
今天将讲述:利用火车头采集A67手机电影,并导入到网站中,如果你要更多更快的教程,请访问:http://www.it28.cn/category-191.html 现在以A67中的电影中的动作片为例: ...
- loadrunner 脚本优化-关联函数web_reg_save_param()函数详解
脚本优化-关联函数web_reg_save_param()函数详解 by:授客 QQ:1033553122 Insert->New Step,打开Add Step对话框 选择函数web_re ...
- Android WIFI的基本操作
WIFI管理类 class WifiConnector { private ExecutorService executors; Handler mHandler; WifiManager wifiM ...
- 输入两个整数n和m,从数列1,2,3,……n中随意取几个数,使其和等于m
题目:编程求解,输入两个整数n和m,从数列1,2,3,……n中随意取几个数,使其和等于m.要求将所有的可能组合列出来. 分析:分治的思想.可以把问题(m,n)拆分(m - n, n -1)和(m, n ...