移远QuecPython(基于EC600s)开发物联网应用(八)

2021-05-15  本文已影响0人  熊爸天下_56c7

本篇开始, 我们将接触到QuecPython第三方库.
目前的第三方库有如下一些:



为什么没有OneNet???🙃🙃🙃
我重点关注的有: request, umqtt ntptime system log

一. request - HTTP

request请求 HTTP客户端的相关功能函数

import request

1. get请求

request.get(url, data, headers,decode,sizeof,ssl_params)
举例:
import request
response = request.get('http://httpbin.org/get') 
print(response.json()) 

2. POST请求

request.post(url, data, headers,decode,sizeof)
举例:
import request
import ujson
data = {"key1": "value1", "key2": "value2", "key3": "value3"}
response = request.post('http://httpbin.org/post',data=ujson.dumps(data)) 
print(response.json()) 

3. put请求

request.put(url, data, headers,decode,sizeof)

4. HEAD请求

request.head(url, data, headers,decode,sizeof)

5. 关于Response类

Response类有如下内容:

属性 描述
response.content 返回响应内容的生成器对象
response.text 返回文本方式响应内容的生成器对象
方法 描述
response.json() 返回响应的json编码内容并转为dict类型

举例: get 百度首页

要注意: 我们获取的content 和 text 是生成器对象, 需要迭代读取

import request
response = request.get('http://www.baidu.com') 
for i in response.text:
  print(i)

二. log - 日志

import log

系统日志记录,分级别日志工具

1. 设置日志输出级别

log.basicConfig(level)

设置日志输出级别, 设置日志输出级别, 默认为log.INFO,系统只会输出 level 数值大于或等于该 level 的的日志结果。

设置日志输出的好处是:

import log
log.basicConfig(level=log.INFO)

2. 获取logger对象

log.getLogger(name)

获取logger对象,如果不指定name则返回root对象,多次使用相同的name调用getLogger方法返回同一个logger对象。

3. 输出debug级别的日志

log.debug(msg)

4. 输出info级别的日志

log.info(msg)

5. 输出warning级别的日志

log.warning(msg)

6. 输出error级别的日志

log.error(msg)

7. 输出critical级别的日志

log.critical(msg)

三. ntptime - NTP对时

import ntptime

该模块用于时间同步

1. 返回当前的ntp服务器

ntptime.host

返回当前的ntp服务器,默认为"ntp.aliyun.com"。

2. 设置ntp服务器

ntptime.sethost(host)

3. 同步ntp时间

ntptime.settime()

4. 举例: NTP对时

这个模块只有设置时间和采集时间的功能, 采集好的时间要使用utime或者RTC模块来读取
此外, 还要注意 : 读取的时间是标准时间, 不是东八区时间, 注意加8小时

import ntptime
import utime
ntptime.settime()
time_turple = utime.localtime()
time_stamp = utime.mktime(time_turple) + 3600*8
time_turple_at_e8 = utime.localtime(time_stamp)
print('当前时间:%d年%d月%d日%d时%d分%d秒,时间戳:%d'
      %(time_turple_at_e8[0],time_turple_at_e8[1],time_turple_at_e8[2],
      time_turple_at_e8[3],time_turple_at_e8[4],time_turple_at_e8[5],time_stamp))

四. system - 环境配置

用于配置系统环境的参数以及功能, 目前只有一个功能😂

1. 交互保护设置

 system.replSetEnable(flag)

交互保护设置,设置开启交互保护后所有外部指令以及代码都无法执行,为不可逆操作,请确认后开启,默认不开启。
开启后, 交互模式就没了, 除非重刷固件

上一篇下一篇

猜你喜欢

热点阅读