本帖最后由 admintest166 于 2022-7-7 13:27 编辑
报错内容为:导入错误:缺少可选依赖项“fsspec”。使用pip或conda安装fsspec。 我在IDE中运行是没有问题的 整套程序跑下来一定报错都没有 但是打包成.exe后 运行就出现报错 如下图所示
想问下 各位大佬这是什么问题呢 缺省的依赖我也已经pip安装了 但是依旧还是不行from pyquery import PyQuery as pq
import pandas as pd
import time
import datetime
import tkinter as tk
from tkinter.filedialog import askopenfilename
# print('文件路径格式为:E:\\log\\xxxx.log')
# a=input('请输入文件的路径:')
# a.replace('\\','//')
root=tk.Tk()
File_selection=askopenfilename(title='请选择日志文件',
initialdir='/', filetypes=[('Python source file','*.log')])
File_transformation=File_selection.replace('/','//')
with open(File_transformation,'r')as f:
data=pq(f.read())
#查找用户
user_data=data('User-Name').text()
#code=[user_data.split(' ') for i in user_data]
code=user_data.split(' ')
print('日志中用户数据有:',len(code),'条')
#用户IP地址
ip_address=data('Framed-IP-Address').text()
#address=[ip_address.split(' ') for i in ip_address]
address=ip_address.split(' ')
print('日志中用户IP地址数据有:',len(address),'条')
#时间
time_data=data('Timestamp').text()
times=time_data.split(' ')
pj_time=b=[f'{times[i]}-{times[i+1]}' for i in range(0,len(times),2)]
print('日志中时间数据有:',len(times),'条')
#pj_time=['06/24/2022-02:10:15', '06/24/2022-02:10:15']
#会话ID
NAS_Port_Id=data('NAS-Port-Id').text()
#as_port_id=[NAS_Port_Id.split(' ') for i in NAS_Port_Id]
nas_port_id=NAS_Port_Id.split(' ')
print('日志中会话ID有:',len(nas_port_id),'条')
pf=pd.DataFrame()
pf1 = pd.DataFrame()
pf1['时间'] = pj_time
pf2=pd.DataFrame()
pf2['会话ID'] = nas_port_id
pf3 = pd.DataFrame()
pf3['用户'] = code
pf4 = pd.DataFrame()
pf4['用户IP'] = address
now_time=str(datetime.datetime.now().strftime('%Y-%m-%d')).replace(' ','-')
#save_path='{}.xlsx'.format(now_time)
# 保存文件 返回保存文件路径
fileSave = tk.filedialog.asksaveasfilename(defaultextension='.py', filetypes=[("xlsx 文件", ".xlsx")])
preservation = fileSave.replace('/', '//')
pf=pd.concat([pf1,pf2,pf3,pf4],axis=1)
pf.to_excel(preservation,encoding='utf-8',index=False,header=True)
print('已在当前程序同目录下生成一个名为{}的xlsx文件 请注意查看! \n此程序5秒后自动关闭'.format(preservation))
time.sleep(5)
打包的时候加一条命令 --hidden-import fsspec 就可以了
|