用cgi向文本或者数据库写入数据

1.开启cgi服务

python -m http.server  --cgi port[端口可选默认为8000]

update.py代码

#coding:utf8
import cgi
c = cgi.FieldStorage()#获取表单参数
try:
data1 = c['mem'].value#获取表单中mem的值
data2 = c['cpu'].value#获取表单中cpu的值
except KeyError:#如果没获取到数据,就把数据设置为空
data1 = ''
data2 = ''
if data1 or data2:#判断是否获取到数据
f = open('cgi-bin/1.txt','w',encoding='utf8')#创建文件
f.write(data1 +'%' + '\n')#写入mem的值
f.write(data2 +'%' + '\n')#写入cpu的值
f.close()#关闭文件
客户端代码:
#coding:utf8
import psutil
import urllib.parse
import urllib.request
test_data = {'mem':psutil.virtual_memory().percent,'cpu':psutil.cpu_percent()}
test_data_urlencode = urllib.parse.urlencode(test_data).encode('utf8')#把字典转为urlencode格式并解码为字节流
requrl = "http://127.0.0.1:8000/cgi-bin/updata.py"
req = urllib.request.Request(url=requrl,data=test_data_urlencode)#url带参数去请求服务器
res_data = urllib.request.urlopen(req)#提交请求

客户端调用cgi的update.py脚本把要传输的数据通过固定的格式传输到文本文件

相关文章:

  • 2021-11-21
  • 2021-12-03
  • 2021-12-26
  • 2022-12-23
  • 2022-12-23
  • 2022-01-04
  • 2021-08-17
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-06-07
  • 2021-10-19
  • 2021-06-15
  • 2021-12-20
  • 2021-11-02
  • 2022-12-23
相关资源
相似解决方案