import os
import re
import time
import json
import requests
post_url = 'xxxxxxxxxxx'
path = "C:\\Users\\L\\Downloads\\home\\vlab\\文档\\ping_monitor\\backup\\20221101" # 找到txt所在位置
files = os.listdir(path) # 得到文件夹下所有txt
terminals={'#wms':'73','#93':'72','#92':'71','#91':'70','#83':'69','#82':'68','#81':'67','#71':'66'}
i = 0 # 定义变量
for file in files: # 让txt循环起来
i += 1 # 用于后续查看完成进度
terminals_file = re.compile(r'[#]\w{2}')
terminals_id = re.findall(terminals_file, file)
position = path + '\\' + file # 构造绝对路径
# print(position)
parrern_1 = re.compile(r'202\d{5}[._]\d{6}') # 用正则匹配所需要的信息
f1 = open(position, "r", encoding='utf-8') # 打开并读取文件信息
result = []
nums = 0
while True:
#response = requests.post(url="post_url", data=json1)
data =f1.readline()
if data =="":
json1 = json.dumps(result)
#response = requests.post(post_url, json1)
#print(json.loads(response.text))
break
str2 = re.findall(parrern_1, data) # 查找所有符合条件的信息
regex = re.findall('(?<=time=).*?(?= ms)', data)
temp = {}
temp["TimeStamp"]=int(time.mktime(time.strptime(str2[0], "%Y%m%d_%H%M%S")))
if regex ==[]:
continue
temp["RTT"]=regex[0]
temp["terminals_id"]=terminals[terminals_id[0]]
result.append(temp)
nums += 1
if nums ==2000:
json1 = json.dumps(result)
#response=requests.post(post_url,json1)
#print(json.loads(response.text))
print(result)
nums = 0
result = []
print("finsh" + str(i))
#f2.close()
f1.close()
post上传
import glob
import os
import gzip
import tarfile
import zipfile
import rarfile
import tarfile
import schedule
import time
def job():
print("I'm working...")
def decompression_tar(tar_path, file_path):
"""
解压缩 tar 或 tar.gz 文件
:param tar_path:tar文件路径
:param file_path:解压后文件路径
:return:
"""
t = tarfile.open(tar_path)
t.extractall(path=file_path)
t.close()
def main():
path = r"C:/Users/L/Downloads/gz/"
file_lst = glob.glob(path + '*')
filename_lst = [os.path.basename(i) for i in file_lst]
for i in range(len(filename_lst)):
print(filename_lst[i])
print(path)
print(filename_lst)
print(file_lst)
decompression_tar(path+filename_lst[i], path)
while True:
# 配置
# __time_____
ehour = 16# 定时小时
emin = 52# 定时分钟
esec = 0 # 定时秒
current_time = time.localtime(time.time()) # 当前时间date
# 操作
if ((current_time.tm_hour == ehour) and (current_time.tm_min == emin) and (current_time.tm_sec == esec)):
print("START")
# 调用相关方法:执行计算、发邮件动作。
main()
time.sleep(1)
文件解压
import os,shutil
def del_file(filepath):
"""
删除某一目录下的所有文件或文件夹
:param filepath: 路径
:return:
"""
del_list = os.listdir(filepath)
for f in del_list:
file_path = os.path.join(filepath, f)
if os.path.isfile(file_path):
os.remove(file_path)
elif os.path.isdir(file_path):
shutil.rmtree(file_path)
del_file('C:\\Users\\L\\Downloads\\gz')
删除指定文件夹文件