File size: 4,855 Bytes
f12b798 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
import requests
import gradio as gr
import openpyxl
import string
import re
import os
import time
import shutil
def fb(name):
# print(name)
name = name.replace("加坑", "", 1)
name = name.replace("手速", "", 1)
name = name.replace("麦序", "", 1)
name = name.replace("空一", "", 1)
name = name.replace("空二", "", 1)
name = name.replace("空三", "", 1)
name = name.replace("空1", "", 1)
name = name.replace("空2", "", 1)
name = name.replace("空3", "", 1)
name = name.replace("关厅", "", 1)
name = name.replace("全麦", "", 1)
name = name.replace("0", "",1)
name = name.replace("1", "", 1)
name = name.replace("2", "",1)
name = name.replace("3", "",1)
name = name.replace("4", "",1)
name = name.replace("5", "",1)
name = name.replace("6", "",1)
name = name.replace("7", "", 1)
name = name.replace("8", "", 1)
name = name.replace("st", "", 1)
name = name.replace("ST", "", 1)
name = name.replace("St", "", 1)
name = name.replace("sT", "", 1)
name = re.sub(r"满$", " ", name)
name = re.sub(r"齐$", " ", name)
name = re.sub(r"手速$", " ", name)
name = re.sub(r"加坑$", " ", name)
z = re.sub(r"\(.*?\)", "", name)
z = re.sub(r"(.*?\)", "", z)
res = re.compile("[^\u4e00-\u9fa5^a-z^A-Z^0-9]")
return res.sub("",z)
def lj(ws):
npps = {}
for mxl in ws["d"]:
# print(mxl.value.split())
if(mxl.value!=None):
for name in mxl.value.split("\n"):
name = name.lstrip()
if(len(name)<12):
if(name!="截止麦序表:"):
if (name != "当前麦序表:"):
if (name.isspace() != True):
pname = fb(name)
print("日志==========================》陪陪名称" + pname)
if (pname != ""):
npps[pname] = npps.get(pname, 0) + 1
else:
for xname in name.split("@"):
if (xname != "截止麦序表:"):
if (xname != "当前麦序表:"):
if (xname.isspace() != True):
pname = fb(xname)
print("日志==========================》陪陪名称" + pname)
if (pname != ""):
npps[pname] = npps.get(pname, 0) + 1
for mxl in ws["e"]:
# print(mxl.value.split())
if(mxl.value!=None):
for name in mxl.value.split("\n"):
name = name.lstrip()
if(len(name)<12):
if(name!="截止麦序表:"):
if (name != "当前麦序表:"):
if(name.isspace()!=True):
pname = fb(name)
print("日志==========================》陪陪名称"+pname)
if(pname!=""):
npps[pname] = npps.get(pname,0)+1
else:
for xname in name.split("@"):
if (xname != "截止麦序表:"):
if (xname != "当前麦序表:"):
if (xname.isspace() != True):
pname = fb(xname)
print("日志==========================》陪陪名称" + pname)
if (pname != ""):
npps[pname] = npps.get(pname, 0) + 1
return npps
def calculate(file):
# 打卡表
wb = openpyxl.load_workbook(file.name)
ws = wb.active
wz = "/tmp/gradio/"
print(file.name)
files = os.listdir(wz)
print("文件信息")
# 打印所有文件名
for xfile in files:
print("--------------")
print(xfile)
if (os.path.isdir(wz + xfile)):
ftime = time.strftime("%Y-%m-%d", time.localtime(os.stat(wz + xfile).st_ctime))
mtime = time.strftime("%Y-%m-%d", time.localtime(time.time()))
print(time.strftime("%Y-%m-%d", time.localtime(os.stat(wz + xfile).st_ctime)))
print(time.strftime("%Y-%m-%d", time.localtime(time.time())))
if (ftime != mtime):
shutil.rmtree(wz + xfile)
print(ftime, xfile, "移除")
npps = lj(ws)
text = "名称 麦序"
xpp = dict(sorted(npps.items(),key=lambda item : item[1],reverse=True))
# print(xpp)
xhs = 1
for k,v in xpp.items():
text=text+"\n"+str(xhs)+"."+k+" = "+str(v)
xhs+=1
return text
def reverse(file):
return calculate(file)
demo = gr.Interface(reverse, inputs=["file"],outputs= "text")
demo.launch()
|