python(22)总结下最近遇到的编码问题

news/2024/7/8 5:55:48 标签: python

最近爬取,或者解析网页是总是遇到编码问题(我的版本:python2.7)

一、常见异常:UnicodeEncodeError: 'ascii' codec can't encode character u'\xb4' in position 0: ordinal not in range(128)

常见解决方案:在代码头添加如下文件

import sys
reload(sys)
sys.setdefaultencoding("utf-8")

有时也会遇到字符转换的问题:

>>> str(u'')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode character u'\u6211' in position 0: ordinal not in range(128)

解决方法如下:

>>> str(u''.encode('utf-8'))
'\xe6\x88\x91'

二、在爬取网页进行解析的时候,遇到中文需要存储的,一般要先看一下中文是什么格式的,如果是unicode则需要进行转码

xx = xxx.encode('utf-8')
f.write(xx)

 

注:以上解决方案有所借鉴其他博友,未能找到源博

转载于:https://www.cnblogs.com/lovychen/p/5780150.html


http://www.niftyadmin.cn/n/547262.html

相关文章

计算机病毒 评课,关于计算机教学计划4篇

关于计算机教学计划4篇时间过得真快&#xff0c;总在不经意间流逝&#xff0c;又将迎来新的工作&#xff0c;新的挑战&#xff0c;写一份计划&#xff0c;为接下来的工作做准备吧&#xff01;可是到底什么样的计划才是适合自己的呢&#xff1f;下面是小编整理的计算机教学计划4…

使用Apache Mesos打造分布式资源调度系统

Netflix使用Apache Mesos运行了一系列批处理、流式处理&#xff0c;以及服务类型的工作负载。两年多来&#xff0c;我们创建了层出不穷的用例&#xff0c;例如实时异常检测、批处理作业的训练和模型构建、机器学习编排&#xff0c;以及基于Node.js的微服务。最近发布的Apache M…

进行数据库设计时不妨请参考如下几个技巧

一&#xff1a;原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下&#xff0c;它们是一对一的关系&#xff1a;即一张原始单据对应且只对应一个实体。在特殊情况下&#xff0c;它们可能是一对多或多对一的关系&#xff0c;即一张原始单证对应多个实体…

艺考可以报考清华的计算机系吗,孟令昊:成为山东高考状元的艺术生,最终被清华大学计算机系录取...

前一段时间&#xff0c;关于山东省高考状元孟令昊的报道不断&#xff0c;关注热度十分高。今年是山东“新高考”第一年&#xff0c;除了语文、数学、外语3门必考科目外&#xff0c;考生还要在其他6门课中选择3科&#xff0c;总分仍然是750分&#xff0c;但不再有文理分科。一、…

js键盘事件全面控制

主要分四个部分第一部分&#xff1a;浏览器的按键事件第二部分&#xff1a;兼容浏览器第三部分&#xff1a;代码实现和优化第四部分&#xff1a;总结 第一部分&#xff1a;浏览器的按键事件 用 js实现键盘记录&#xff0c;要关注浏览器的三种按键事件类型&#xff0c;即keydown…

HTML DOM教程 16-HTML DOM Area 对象

HTML DOM教程 16-HTML DOM Area 对象 1:Area 对象 Area 对象代表图像映射的一个区域&#xff08;图像映射指的是带有可点击区域的图像&#xff09; 在 HTML 文档中 <area> 标签每出现一次&#xff0c;就会创建一个 Area 对象。 2:Area 对象的属性 属性描述IEFOW3CaccessK…

实现计算机考试和vb交换的,计算机等级考试二级VB考点:动态数组及声明

计算机等级考试二级VB考点&#xff1a;动态数组及声明建立动态数组的方法是&#xff1a;利用Dim、Private、Public语句声明括号内为空的数组&#xff0c;然后在过程中用ReDim语句指明该数组的大小。下面是小编为大家带来的关于动态数组及声明的知识&#xff0c;欢迎阅读。1. 动…

C Primer Plus 第11章 字符串和字符串函数 11.3 字符串输出

2019独角兽企业重金招聘Python工程师标准>>> 11.3.1 puts( )函数 puts( )函数的使用很简单&#xff0c;只需要给出字符串参数的地址。程序清单11.8列出了输出字符串的多种方式。 程序清单11.8 put_out.c程序 /*put_out.c 使用puts( )函数*/ #include<stdio.h&g…