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函数可变参数定义及其参数传递方式
Aug 02 Python
ubuntu安装mysql pycharm sublime
Feb 20 Python
python字典值排序并取出前n个key值的方法
Oct 17 Python
Matplotlib中文乱码的3种解决方案
Nov 15 Python
Python使用修饰器进行异常日志记录操作示例
Mar 19 Python
Django框架models使用group by详解
Mar 11 Python
Python实现动态循环输出文字功能
May 07 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
May 08 Python
基于python实现matlab filter函数过程详解
Jun 08 Python
深入了解python列表(LIST)
Jun 08 Python
用python实现前向分词最大匹配算法的示例代码
Aug 06 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
Feb 27 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
Yii模型操作之criteria查找数据库的方法
2016/07/15 PHP
php使用imagecopymerge()函数创建半透明水印
2018/01/25 PHP
PHP实现微信退款的方法示例
2019/03/26 PHP
JavaScript 事件冒泡简介及应用
2010/01/11 Javascript
Javascript基础教程之while语句
2015/01/18 Javascript
JavaScript模拟可展开、拖动与关闭的聊天窗口实例
2015/05/12 Javascript
jQuery中$.each()函数的用法引申实例
2016/05/12 Javascript
JavaScript函数表达式详解及实例
2017/05/05 Javascript
详解微信小程序中的页面代码中的模板的封装
2017/10/12 Javascript
详解如何在微信小程序开发中正确的使用vant ui组件
2018/09/13 Javascript
node.js的Express服务器基本使用教程
2019/01/09 Javascript
javascript实现的字符串转换成数组操作示例
2019/06/13 Javascript
jQuery实现轮播图源码
2019/10/23 jQuery
微信小程序实现滑动翻页效果(完整代码)
2019/12/06 Javascript
基于JavaScript实现控制下拉列表
2020/05/08 Javascript
js实现列表按字母排序
2020/08/11 Javascript
JavaScript实现10秒后再次获取验证码
2020/12/02 Javascript
[49:12]完美世界DOTA2联赛PWL S2 Magma vs GXR 第二场 11.29
2020/12/02 DOTA
用Python进行TCP网络编程的教程
2015/04/29 Python
django反向解析和正向解析的方式
2018/06/05 Python
python 2.7.13 安装配置方法图文教程
2018/09/18 Python
python 的topk算法实例
2020/04/02 Python
Python用来做Web开发的优势有哪些
2020/08/05 Python
python压包的概念及实例详解
2021/02/17 Python
使用css3匹配手机屏幕横竖状态
2014/01/27 HTML / CSS
Notino匈牙利:购买香水和化妆品
2019/04/12 全球购物
西班牙在线药店:DosFarma
2020/03/28 全球购物
公司年会演讲稿范文
2014/01/11 职场文书
一份创业计划书范文
2014/02/08 职场文书
新闻发布会主持词
2014/03/28 职场文书
交通事故协议书
2014/04/15 职场文书
电气自动化求职信
2014/06/24 职场文书
股份合作协议书
2014/09/10 职场文书
公安四风对照检查材料思想汇报
2014/10/11 职场文书
务虚会发言材料
2014/12/25 职场文书
经典祝酒词大全
2015/08/12 职场文书