python处理中文编码和判断编码示例
下面所说的都是针对python2.7
#coding:utf-8
#chardet 需要下载安装
import chardet
#抓取网页html
line = "http://www.***.com"
html_1 = urllib2.urlopen(line,timeout=120).read()
#print html_1
encoding_dict = chardet.detect(html_1)
#print encoding
web_encoding = encoding_dict['encoding']
if web_encoding == 'utf-8' or web_encoding == 'UTF-8':
html = html_1
else :
html = html_1.decode('gbk','ignore').encode('utf-8')
#有以上处理,整个html就不会是乱码。
相关推荐
-
Python匹配中文的正则表达式
正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大.得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同:但不用担心,不被支持的语法通常是不常用的部分. Python正则表达式简介 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 P
-
Python smallseg分词用法实例分析
本文实例讲述了Python smallseg分词用法.分享给大家供大家参考.具体分析如下: #encoding=utf-8 #import psyco #psyco.full() words = [x.rstrip() for x in open("main.dic",mode='r',encoding='utf-8') ] from smallseg import SEG seg = SEG() print('Load dict...') seg.set(words) print(&
-
python 中文乱码问题深入分析
在本文中,以'哈'来解释作示例解释所有的问题,"哈"的各种编码如下: 1. UNICODE (UTF8-16),C854: 2. UTF-8,E59388: 3. GBK,B9FE. 一.python中的str和unicode 一直以来,python中的中文编码就是一个极为头大的问题,经常抛出编码转换的异常,python中的str和unicode到底是一个什么东西呢? 在python中提到unicode,一般指的是unicode对象,例如'哈哈'的unicode对象为 u'\u54c8
-
Python中文分词实现方法(安装pymmseg)
本文实例讲述了Python中文分词实现方法.分享给大家供大家参考,具体如下: 在Python这pymmseg-cpp 还是十分方便的! 环境 ubuntu10.04 , python2.65 步骤: 1 下载mmseg-cpp的源代码 http://code.google.com/p/pymmseg-cpp/ 2 执行: tar -zxf pymmseg-cpp*.tar.gz //解压后得到pymmseg 目录 cd pymmseg\mmseg-cpp python build.py #生成
-
python中文乱码的解决方法
乱码原因:源码文件的编码格式为utf-8,但是window的本地默认编码是gbk,所以在控制台直接打印utf-8的字符串当然是乱码了! 解决方法:1.print mystr.decode('utf-8').encode('gbk')2.比较通用的方法: 复制代码 代码如下: import systype = sys.getfilesystemencoding()print mystr.decode('utf-8').encode(type)
-
python实现中文输出的两种方法
本文实例讲述了python实现中文输出的两种方法.分享给大家供大家参考.具体如下: 方法一: 用encode和decode 如: import os.path import xlrd,sys Filename='/home/tom/Desktop/1234.xls' if not os.path.isfile(Filename): raise NameError,"%s is not a valid filename"%Filename bk=xlrd.open_workbook(Fi
-
Python中使用中文的方法
先来看看python的版本: >>> import sys >>> sys.version '2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)]' (一) 用记事本创建一个文件ChineseTest.py,默认ANSI: s = "中文" print s 测试一下瞧瞧: E:\Project\Python\Test>pyt
-
Python 中文正则表达式笔记
从字符串的角度来说,中文不如英文整齐.规范,这是不可避免的现实.本文结合网上资料以及个人经验,以 python 语言为例,稍作总结.欢迎补充或挑错. 一点经验 可以使用 repr()函数查看字串的原始格式.这对于写正则表达式有所帮助. Python 的 re模块有两个相似的函数:re.match(), re.search .两个函数的匹配过程完全一致,只是起点不同.match只从字串的开始位置进行匹配,如果失败,它就此放弃:而search则会锲而不舍地完全遍历整个字串中所有可能的位置,直到成功地
-
python查询mysql中文乱码问题
问题: python2.7 查询或者插入中文数据在mysql中的时候出现中文乱码 --- 可能情况: 1.mysql数据库各项没有设置编码,默认为'latin' 2.使用MySQL.connect的时候没有设置默认编码 3.没有设置python的编码,python2.7默认为'ascii' 4.没有解码 --- 解决方法: 1.设置mysql的编码 ubuntu执行下列语句: ** sudo vim /etc/mysql/my.cnf ** 然后在里面插入语句: [client] default
-
wxPython中文教程入门实例
wxPython中文教程入门实例 wx.Window 是一个基类,许多构件从它继承.包括 wx.Frame 构件.可以在所有的子类中使用 wx.Window 的方法. wxPython的几种方法:* SetTitle( string title ) -- 设置窗口标题.只可用于框架和对话框. * SetToolTip( wx.ToolTip tip ) -- 为窗口添加提示. * SetSize( wx.Size size ) -- 设置窗口的尺寸. * SetPosition( wx.Poin
-
python 中文字符串的处理实现代码
>>> teststr = '我的eclipse不能正确的解码gbk码!' >>> teststr '\xe6\x88\x91\xe7\x9a\x84eclipse\xe4\xb8\x8d\xe8\x83\xbd\xe6\xad\xa3\xe7\xa1\xae\xe7\x9a\x84\xe8\xa7\xa3\xe7\xa0\x81gbk\xe7\xa0\x81\xef\xbc\x81' >>> tests2 = u'我的eclipse不能正确的解码gb
-
Python结巴中文分词工具使用过程中遇到的问题及解决方法
本文实例讲述了Python结巴中文分词工具使用过程中遇到的问题及解决方法.分享给大家供大家参考,具体如下: 结巴分词是Python语言中效果最好的分词工具,其功能包括:分词.词性标注.关键词抽取.支持用户词表等.这几天一直在研究这个工具,在安装与使用过程中遇到一些问题,现在把自己的一些方法帖出来分享一下. 官网地址:https://github.com/fxsjy/jieba 1.安装. 按照官网上的说法,有三种安装方式, 第一种是全自动安装:easy_install jieba 或者 pip
-
python实现中文分词FMM算法实例
本文实例讲述了python实现中文分词FMM算法.分享给大家供大家参考.具体分析如下: FMM算法的最简单思想是使用贪心算法向前找n个,如果这n个组成的词在词典中出现,就ok,如果没有出现,那么找n-1个...然后继续下去.假如n个词在词典中出现,那么从n+1位置继续找下去,直到句子结束. import re def PreProcess(sentence,edcode="utf-8"): sentence = sentence.decode(edcode) sentence=re.s
随机推荐
- fso asp生成静态html的代码
- javascript流程控制语句集合
- 利用iOS绘制图片生成随机验证码示例代码
- ThinkPHP采用<volist>实现三级循环代码实例
- Python开发微信公众平台的方法详解【基于weixin-knife】
- JavaScript null和undefined区别分析
- python访问纯真IP数据库的代码
- CSS hack浏览器兼容一览表
- 让IE6支持min-width最小宽度
- mssql自动备份及自动清除日志文件服务器设置
- jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
- 微信JS-SDK坐标位置如何转换为百度地图坐标
- 学习Android开发之RecyclerView使用初探
- java 遍历request中的所有表单数据的实例代码
- C#图像透明度调整的方法
- PHP实现数据分页显示的简单实例
- android Retrofit2+okHttp3使用总结
- 教你如何架设个人服务器——全教程
- Python GUI编程完整示例
- 基于OpenCV python3实现证件照换背景的方法