用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脚本把要传输的数据通过固定的格式传输到文本文件
【相关推荐】
2. 分享在IIS上用CGI方式运行Python脚本的实例教程
Das obige ist der detaillierte Inhalt von详解cgi向文本或者数据库写入数据实例代码. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
So binden Sie Daten in einer Dropdown-Liste
E-O Exchange herunterladen
exe-Viruslösung
So verwenden Sie Shuffle
Der Unterschied zwischen k8s und Docker
So verwenden Sie die MySQL-Workbench
Wie stellen MySQL und Redis die Konsistenz beim doppelten Schreiben sicher?
Kann der Appdata-Ordner gelöscht werden?