python解决Fedora解压zip时中文乱码的方法


Posted in Python onSeptember 18, 2016

前言

很多时候在windows下压缩文件没问题,但是到了Linux下,出现乱码,很常见。以前在Ubuntu下,用`unzip -O GBK filename.zip` 就可以搞定。 换了Fedora后,暂时没发现乱码的压缩文件。晚上下载一本书的光盘,又碰到了乱码。尝试之前的方法没成功。看了下unzip的help,没-O那个参数了== 刚好找到一个用python解决的办法,分享下。

新建一个`.py`后缀的文件,直接复制粘贴代码:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
import os
import sys
import zipfile
 
print "Processing File " + sys.argv[1]
 
file=zipfile.ZipFile(sys.argv[1],"r");
for name in file.namelist():
  utf8name=name.decode('gbk')
  print "Extracting " + utf8name
  pathname = os.path.dirname(utf8name)
  if not os.path.exists(pathname) and pathname!= "":
    os.makedirs(pathname)
  data = file.read(name)
  if not os.path.exists(utf8name):
    fo = open(utf8name, "w")
    fo.write(data)
    fo.close
file.close()

执行解压zip文件,可爱的中文就出来了。

python 文件名.py 需要解压的文件名.zip

总结

好了,这个问题就这么简单的解决了,大家都学会了吗?希望这篇文章对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Python 相关文章推荐
python getopt 参数处理小示例
Jun 09 Python
Python编程中的文件读写及相关的文件对象方法讲解
Jan 19 Python
python文件操作相关知识点总结整理
Feb 22 Python
Python学生信息管理系统修改版
Mar 13 Python
python实现两个文件合并功能
Apr 01 Python
python中实现字符串翻转的方法
Jul 11 Python
使用Python处理BAM的方法
Sep 28 Python
PyQt5+requests实现车票查询工具
Jan 21 Python
Django表单提交后实现获取相同name的不同value值
May 14 Python
Python导入数值型Excel数据并生成矩阵操作
Jun 09 Python
Python如何给你的程序做性能测试
Jul 29 Python
使用Python解析Chrome浏览器书签的示例
Nov 13 Python
Python自动化运维和部署项目工具Fabric使用实例
Sep 18 #Python
基于Python 的进程管理工具supervisor使用指南
Sep 18 #Python
打包发布Python模块的方法详解
Sep 18 #Python
在python的类中动态添加属性与生成对象
Sep 17 #Python
Python中字符串的处理技巧分享
Sep 17 #Python
Python中对象迭代与反迭代的技巧总结
Sep 17 #Python
发布你的Python模块详解
Sep 15 #Python
You might like
php在线打包程序源码
2008/07/27 PHP
浅析PHP Socket技术
2013/08/02 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
php使用filter_var函数判断邮箱,url,ip格式示例
2019/07/06 PHP
php实现多站点共用session实现单点登录的方法详解
2019/09/18 PHP
yii框架结合charjs统计上一年与当前年数据的方法示例
2020/04/04 PHP
addRule在firefox下的兼容写法
2006/11/30 Javascript
JS URL传中文参数引发的乱码问题
2009/09/02 Javascript
jquery+json 通用三级联动下拉列表
2010/04/19 Javascript
JavaScript 小型打飞机游戏实现原理说明
2010/10/28 Javascript
javascript实现页面内关键词高亮显示代码
2014/04/03 Javascript
javascript学习笔记--数字格式类型
2014/05/22 Javascript
JavaScript中5种调用函数的方法
2015/03/12 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
2015/10/16 Javascript
微信小程序 视图层(xx.xml)和逻辑层(xx.js)详细介绍
2016/10/13 Javascript
JS使用面向对象技术实现的tab选项卡效果示例
2017/02/28 Javascript
js a标签点击事件
2017/03/30 Javascript
AngularJS实现的select二级联动下拉菜单功能示例
2017/10/25 Javascript
JS函数节流和防抖之间的区分和实现详解
2019/01/11 Javascript
基于vue实现图片验证码倒计时60s功能
2019/12/10 Javascript
基于python log取对数详解
2018/06/08 Python
Python3 使用pillow库生成随机验证码
2019/08/26 Python
face++与python实现人脸识别签到(考勤)功能
2019/08/28 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
python实现低通滤波器代码
2020/02/26 Python
纯CSS3大转盘抽奖示例代码(响应式、可配置)
2017/01/13 HTML / CSS
基于 HTML5 的 WebGL 3D 版俄罗斯方块的示例代码
2018/05/28 HTML / CSS
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
澳大利亚游乐场设备品牌:Lifespan Kids
2019/05/24 全球购物
文员个人求职自荐信
2013/09/21 职场文书
分公司任命书
2014/06/06 职场文书
文明城市创建标语
2014/06/16 职场文书
爬山的活动方案
2014/08/16 职场文书
村主任群众路线个人对照检查材料
2014/09/26 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书
python基础入门之字典和集合
2021/06/13 Python