第一种办法是使用正则直接删除非utf-8的字符\x85,以下是请网友帮助写的
#-*- encoding:utf-8 -*-
import sys
reload(sys)
import chardet
sys.setdefaultencoding('utf-8')
strs=" should buy\x85 appleyuchi \x85 I decide to try this one. "
                
# fencoding=chardet.detect(strs)
# print fencoding

import re
p=re.compile(r'[^\x00-\x7f]')
m=re.sub(p,'',strs)

print m

第二种办法是

#-*- encoding:utf-8 -*-
import sys
reload(sys)
import chardet
sys.setdefaultencoding('utf-8')
strs=" should buy\x85 appleyuchi \x85 I decide to try this one. "
                
fencoding=chardet.detect(strs)
print fencoding

print strs.decode('windows-1252')

运行结果:

{'confidence': 0.73, 'language': '', 'encoding': 'Windows-1252'}
 should buy… appleyuchi … I decide to try this one.

也就是先判断strs是什么类型的编码,然后根据该编码名字进行解码

第三种办法:

定位到错误后,在python交互模式下:

>>> ord('\x85')
133

>>>

因为unicode是兼容ASCII的,但是ord值大于127,所以\x85既不是ASCII也不属于unicode,只能是其他编码,判断之后,转到第一种处理或者第二种办法处理。

记录网友的话:用java爬取数据,即使代码中设定编码为utf-8,但是如果数据本身是非utf-8,那么即使代码设定为utf-8,也是无法对非utf-8的数据进行解码的,此时只能手动解码。decode('windows-1252')

字符集可以在下面查看(需要翻墙),在右上角输入\x85,回车后就可以查到在不通的语言中对应的字符

http://www.charbase.com/0085-unicode-next-line-nel

注意

‘’我‘’这个汉字不是一个char。是utf编码后到字符串
字符,字符串是两个不同的东西
unicode做的就是用多个字符表示一个对应的关系

>>> print('我'.encode())
b'\xe6\x88\x91'
for i in str('我'.encode()): print(ord(i))
每一位ascii(也就是\xe6,\x88\,x91)都是在128以下的

python2.7删除所有非utf-8编码的字符串相关推荐

  1. Swift3.0语言教程删除字符与处理字符编码

    Swift3.0语言教程删除字符与处理字符编码 Swift3.0语言教程删除字符 Swift3.0语言教程删除字符与处理字符编码,在字符串中,如果开发者有不需要使用的字符,就可以将这些字符删除.在NS ...

  2. 【协作MIMO+非规则LDPC】协作MIMO系统上,中继协作解码转发策略和编码协作策略,采用非规则LDPC编码

    1.软件版本 MATLAB2013b 2.本算法理论知识 做非规则LDPC码的以编码协作形式的中继协议,比较以下三种情况下的误码率图和中断概率图: 源节点一个(配置一根天线),中继节点4个(每个节点配 ...

  3. html转换编码格式,html编码转换 html编码设置utf gbk编码转换图文教程

    html编码转换 html编码设置utf gbk编码转换图文教程篇 常用HTML编码之urf-8编码转换为gb2312编码或者gb2312转换为utf-8编码快速转换设置,这里DIVCSS5介绍使用D ...

  4. Excel批量删除选区非数字的单元格的操作

    如下图所示删除非数字,最后只留下123,如何批量操作呢 (方方格子插件) 1.先看动图演示吧 2.选中数据区域 3.选择diy工具箱插件 4.找到收纳箱按钮 5.搜索删除选区非数字,找到这个命令 6. ...

  5. python utf—8编码问题待解决

    执行python manage. py runserver后出现错误 utf-8编码出错 (result, consumed) = self._buffer_encode(data, self.err ...

  6. 基于verilog的非归零编码、非归零反转编码、归零编码(RZ)

    非归零编码 编码数学模型: 1.当前时钟,输入为低,输出则为低:输入为高,输出则为高 2.逻辑0和逻辑1通常用于调制信道信号的不同状态,例如-12V和+12V 3.由于没有使信道归零的逻辑和状态,故称 ...

  7. 无法在“窗口”上执行“ btoa”:要编码的字符串包含Latin1范围之外的字符

    如何解决无法在"窗口"上执行" btoa":要编码的字符串包含Latin1范围之外的字符? 如果您有UTF8,请使用它(实际上与SVG源一起使用),例如: bt ...

  8. UTF-8编码的字符串拆分成单字、获取UTF-8字符串的字符个数的代码及原理(c++实现)...

    一.字符编码简单介绍 1. ASCII码 在计算机内部,全部的信息终于都表示为一个二进制的字符串.每个二进制位(bit)有0和1两种状态,因此八个二进制位就能够组合出256种状态,这被称为一个字节(b ...

  9. python ascii码16进制转换_如何在Python十六进制整数和ASCii编码的字符串之间进行转换...

    今天,我将与您分享一种将Python十六进制整数转换为ASCii编码的字符串的方法,该方法具有很好的参考价值,希望对大家有所帮助. 让我们一起关注小编,看看 当使用Pyserial与STM32通信时, ...

最新文章

  1. Java与UML交互图
  2. TCP/IP详解--第九章
  3. ArcEngine 图层标注 (根据字段、角度)
  4. sql insert 自动增量值_SQL中有关DQL、DML、DDL、DCL的概念与区别
  5. Ajax异步请求-简单模版
  6. 郎溪 溪流_到无限(溪流)和超越!
  7. matlab程序设计图像匹配,灰度,归一化算法,快速匹配。有代码好用。转载
  8. 每周一书-2016年8月28日到9月4日获奖读者公布
  9. 洛谷——P1421 小玉买文具
  10. 30美味的食物移动应用设计
  11. JSP + AjaxAnywhere页面开发规范
  12. [转]tar 命令使用
  13. HTML5游子吟网页的完整代码,游子吟古诗注释范文(5页)-原创力文档
  14. 2017.2.10【初中部 GDKOI】模拟赛B组 方格游戏(game) 题解
  15. 蓝牙鼠标windows linux,关于windows linux双系统共用蓝牙鼠标的教程
  16. 安装caffe中间遇到的一些问题
  17. [cesium] | 视频融合 | 基于3dtileset的视频投射插件 | 支持动态调整角度
  18. 长生诀linux架设教程,手游【长生诀】VM一键即玩服务端+GM工具+图文教程
  19. 38211协议学习笔记(2)-帧结构和物理资源
  20. 第29节 防火墙部署实验(IP、策略、NAT、HA)——基于topgate防火墙的网页部署方法

热门文章

  1. core文件与gdb调试
  2. Sql server 事务的两种用法
  3. URAL 1033 Labyrinth
  4. js+正文规则 高亮搜索关键字(二)
  5. 一封陌生土耳其网友的来信
  6. readUnsignedInt () 自动移动字节流位置,和.net是一样的
  7. linux shell用户交互,鱼 - 一个明智的和用户友好的交互式shell为Linux
  8. vue定义一个全局价格处理函数
  9. Nuxt.js项目不识别import原因及解决方法
  10. 编译VTK的MFC库