博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 抓取网页乱码问题 以及EXCEL乱码
阅读量:5791 次
发布时间:2019-06-18

本文共 1370 字,大约阅读时间需要 4 分钟。

import codecs  f1=codecs.open('items.json', 'r', encoding='utf-8').read().decode("unicode_escape")f=codecs.open('out.txt','wb',encoding='utf-8')print >>f,f1f.close()

 

字符编码问题的确是万年的难题。之前我也处理过 R 语言中文乱码的问题,it just drives me crazy!!!!!!!!!!!!!!!!! HOLY SHIT!!!!!!!!!!!!

 

要么就是这样的错误

UnicodeEncodeError: ‘gbk’ codec can’t encode character u’\u200e’ in position 43: illegal multibyte sequence

要么就是可以读取然后就乱码。

 

我本身环境为UTF-8.

>>> import sys;>>> print(sys.getdefaultencoding());utf-8

在第一行加上

# -*- coding: utf-8 -*-

 

将你的PY文件改为UTF-8文件格式,然后就

 

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

完美解决方案:

BYTES.decode("GBK",'ignore').encode("GBK").decode('UTF-8','ignore') #总之尼玛你就GBK和UTF-8之间搞来搞起就好了!艹!

 

EXCEL 乱码问题

可能大家都遇到过,python在输出的csv文件中如果有utf-8格式的中文,那么在使用excel打开该csv文件时,excel将不能够有效识别 出文件中的中文数据,严重时甚至不能够识别出分隔符。那么,要怎样操作才能够让excel识别出utf-8格式的中文呢?方法其实很简单,见以下代码:

  1. import codecs  
  2.   
  3. with open('ExcelUtf8.csv', 'w') as f:  
  4.     t = u'中国人'  
  5.     f.write(codecs.BOM_UTF8)  
  6.     f.write('%s,1,3\n' % t.encode('utf-8'))  

       运行代码,使用excel打开,截图如下:

       如果我们屏蔽掉其中的一句代码

  1. import codecs  
  2.   
  3. with open('ExcelUtf8.csv', 'w') as f:  
  4.     t = u'中国人'  
  5.     #f.write(codecs.BOM_UTF8)  
  6.     f.write('%s,1,3\n' % t.encode('utf-8'))  

      再次运行代码,使用excel打开,截图如下:

      其中具体的原理,大家可以去百度:BOM了

That which didn't kill me makes me stronger

 

转载于:https://www.cnblogs.com/kiddy/p/4354061.html

你可能感兴趣的文章
MongoDB工具MagicMongoDBTool使用介绍(一) -- 简单MongoDB入门
查看>>
javascript的事件
查看>>
201521123009 《Java程序设计》第1周学习总结
查看>>
年终述职--常见问题分析解答
查看>>
C#_细说Cookie_Json Helper_Cookies封装
查看>>
在mui中创建aJax来请求数据..并展示在页面上
查看>>
spring 之AOP
查看>>
总结 15/4/23
查看>>
Windows 7环境下网站性能测试小工具 Apache Bench 和 Webbench使用和下载
查看>>
C#常见错误解决方法
查看>>
安装cnpm (npm淘宝镜像)
查看>>
Java 面向对象(基础) 知识点总结I
查看>>
读书笔记《自控力》
查看>>
基于神念TGAM的脑波小车(1)
查看>>
ceph集群搭建Jewel版本
查看>>
HttpClient 解释
查看>>
111111
查看>>
在Button上面显示图片,去掉Button的默认样式
查看>>
区域生长算法
查看>>
(转)json+flexgrid+jbox组合运用页面刷新<jsp>
查看>>