Python post上传内容和定时解压

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')

删除指定文件夹文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值