首页 > 编程语言 >python zipfile解压文件出现中文乱码

python zipfile解压文件出现中文乱码

时间:2023-04-24 16:44:10浏览次数:35  
标签:解压 old name python zipfile 乱码 file path new

解压文件首先要在编写代码的开头通过import关键字来调用zipfile,再用with开头的命令来处理需要解压的文件。解决乱码情况可以通过自己创建文件夹的方式来解决,先创建一个自己的解压目录,为了区分是文件还是文件夹要获取文件大小,再把解码方式为cp437变成gbk,再对文件进行拼接,示例如下:

with zipfile.ZipFile(file='/data/home/sunzq/FQA.zip', mode='r') as wz:
            # os.mkdir('/data/home/sunzq/FQA')
            for old_name in wz.namelist():
                    file_size = wz.getinfo(old_name).file_size
                    new_name = old_name.encode('cp437').decode('gbk')
                    new_path = os.path.join('/data/home/sunzq/', new_name)
                    if file_size > 0:
                        with open(file=new_path, mode='wb') as h:
                            h.write(wz.read(old_name))
                    else:
                        os.mkdir(new_path)

 


标签:解压,old,name,python,zipfile,乱码,file,path,new
From: https://www.cnblogs.com/sunzhiqi/p/17350039.html

相关文章

  • python pyinstaller库
    简要pyinstaller模块主要用于python代码打包成exe程序直接使用,这样在其它电脑上即使没有python环境也是可以运行的。用法一.安装pyinstaller属于第三方库,因此在使用的时候需提前安装pipinstallpyinstaller二.配置spec文件1.配置生成exe程序文件夹(1)如果不熟悉spec配置......
  • python入门编程1
    最近迅速看了以下推荐的两本Python入门书籍:1.Python编程:从入门到实践2.Python编程快速上手——让繁琐工作自动化两本书的前半部分内容相似,都是些简单的基础知识,后半部分是些实践项目,但是从我的感受来看,项目内容组织的还是有点大,比如其中一个web项目开发,对于新手来说,里面包含的......
  • python三角网格划分示例
    python三角网格划分示例 importnumpyasnpimportturtle#输入三角形的边长length=float(input("Enterthelengthofthetriangle:"))#计算最短边、最长边和三角形个数short_side=lengthmax_side=length+lengthn=int(max_side/s......
  • python linux服务器上运行
    后台运行python脚本/opt/njzf/bsp/python37/python37/bin/python3.7main.py>result.log2>&1&说明:1.末尾的“&”:表示后台运行程序2.“nohup”:保证程序不被挂起3.“python”:是执行python代码的命令4.“-u”:表示不启用缓存,实时输出打印信息到日志文件(如果不加-u,则会导致......
  • 求解三维装箱问题的启发式深度优先搜索算法(python)
    ⭐️问题描述给定一个容器(其体积为VVV)和一系列待装载的箱子,容器和箱子的形状都是长方体。问题的目标是要确定一个可行的箱子放置方案使得在满足给定装载约束的情况下,容器中包含的箱子总体积SSS尽可能的大,即填充率尽可能的大,这里填充率指的是S/V∗100%S/V*100\%S/V∗......
  • 加密Python项目代码之把Django或Flask项目打包成exe
    目录python代码仿泄露方案-方案一:启动起来,把源代码删除-方案二:pipinstaller打包成可执行文件-方案三:做到docker镜像中---》运行容器---》-epassword=授权码加密Python项目代码之把Django或Flask项目打包成exe:https://zhuanlan.zhihu.com/p/430490285......
  • python mysql eXCEL
    importreimportpymysqlimportrequestsfrombs4importBeautifulSoupimportlxmlimportsys,ioimportopenpyxl#数据库信息host='192.168.56.101'username="root"passwd="123456"database="test"port=3306ch......
  • python工具模块介绍-time 时间访问和转换
    快速入门In[1]:importtime#获取当前时间In[25]:time.strftime("%Y-%m-%d_%H-%M-%S",time.localtime())Out[25]:'2018-06-17_20-05-36'#停顿0.5秒In[26]:time.sleep(0.5)简介功能:时间访问和转换。相关模块:datetime 标准模块。calendar标准模块。下面介......
  • python jwt token使用
    官网https://pyjwt.readthedocs.io/en/latest/index.html#官网https://pyjwt.readthedocs.io/en/latest/index.html#我们在jwt.encode函数中使用了三个参数:#1)第一个是payload,主要用来存放有效的信息,例如用户名,过期时间等想要传递的信息。payload字典内部官方指定有指定ke......
  • python stata 交互
    pythonfromsfiimportDatafromsfiimportDatetimefromsfiimportFramefromsfiimportMacrofromsfiimportValueLabelcca="北京"ac=cca.split('')foriiinac:Macro.setLocal('x',ii)enddisp"`x'"py......