关于Python中输出中文的一点疑问
#encoding=gb2312
import urllib
import re def getHtml(url):
page = urllib.urlopen(url)
html = page.read()
return html def getImg(html):
reg = r'<strong>(.*)</strong>'
imgre = re.compile(reg)
imglist = re.findall(imgre, html)
return imglist html = getHtml('http://yjs.teacher.com.cn/dsjyss/jswk11104/info/kcjjx.htm')
imglist = getImg(html)
print html #这样输出一堆Unicode码
print imglist[0]
#for img in imglist:
# print img
以上是我学习Python爬虫的一个简单的例子,我修改网上流传的下载百度图片的例子,用来抓取一些网络课程的课程名称
但是我发现一个有意思的问题,如上图代码
如果直接是print正则之后的html则会得到
['\xe7\xbd\x91\xe7\xbb\x9c\xe6\x8a\x80\xe6\x9c\xaf\xe4\xb8\x8e\xe5\xa4\x9a\xe5\xaa\x92\xe4\xbd\x93\xe6\x8a\x80\xe6\x9c\xaf', 'Network Technology and Multimedia Technology', '1. \xe7\x9f\xa5\xe8\xaf\x86\xe4\xb8\x8e\xe6\x8a\x80\xe8\x83\xbd', '2. \xe8\xbf\x87\xe7\xa8\x8b\xe4\xb8\x8e\xe6\x96\xb9\xe6\xb3\x95', '3. \xe6\x83\x85\xe6\x84\x9f\xe6\x80\x81\xe5\xba\xa6\xe4\xb8\x8e\xe4\xbb\xb7\xe5\x80\xbc\xe8\xa7\x82', '\xe4\xb8\x93\xe9\xa2\x98\xe4\xb8\x80\xef\xbc\x9a\xe5\xa4\x9a\xe5\xaa\x92\xe4\xbd\x93\xe6\x8a\x80\xe6\x9c\xaf1', '\xe4\xb8\x93\xe9\xa2\x98\xe4\xba\x8c\xef\xbc\x9a\xe5\xa4\x9a\xe5\xaa\x92\xe4\xbd\x93\xe8\xaf\xbe\xe4\xbb\xb6\xe8\xae\xbe\xe8\xae\xa1', '\xe4\xb8\x93\xe9\xa2\x98\xe4\xb8\x89\xef\xbc\x9a\xe5\xa4\x9a\xe5\xaa\x92\xe4\xbd\x93\xe8\xaf\xbe\xe4\xbb\xb6\xe5\xbc\x80\xe5\x8f\x91', '\xe4\xb8\x93\xe9\xa2\x98\xe5\x9b\x9b\xef\xbc\x9a \xe7\xbd\x91\xe7\xbb\x9c\xe8\xaf\xbe\xe7\xa8\x8b\xe8\xae\xbe\xe8\xae\xa1', '\xe4\xb8\x93\xe9\xa2\x98\xe4\xba\x94\xef\xbc\x9a\xe7\xbd\x91\xe7\xbb\x9c\xe8\xaf\xbe\xe7\xa8\x8b\xe5\xbc\x80\xe5\x8f\x91', '\xe4\xb8\x93\xe9\xa2\x98\xe5\x85\xad\xef\xbc\x9a\xe5\xa4\x9a\xe5\xaa\x92\xe4\xbd\x93\xe6\x8a\x80\xe6\x9c\xaf2', '\xe4\xb8\x93\xe9\xa2\x98\xe4\xb8\x83\xef\xbc\x9a\xe6\xa0\xa1\xe5\x9b\xad\xe5\xb1\x80\xe5\x9f\x9f\xe7\xbd\x91\xe7\x9a\x84\xe6\x9e\x84\xe5\xbb\xba', '\xe4\xb8\x93\xe9\xa2\x98\xe5\x85\xab\xef\xbc\x9a\xe7\xbd\x91\xe7\xbb\x9c\xe6\x9c\x8d\xe5\x8a\xa1\xe5\x99\xa8\xe9\x85\x8d\xe7\xbd\xae\xe4\xb8\x8e\xe7\xae\xa1\xe7\x90\x86', '\xe4\xb8\x93\xe9\xa2\x98\xe4\xb9\x9d\xef\xbc\x9a\xe7\xbd\x91\xe7\xbb\x9c\xe8\xae\xbe\xe5\xa4\x87\xe4\xba\x92\xe8\xbf\x9e', '\xe4\xb8\x93\xe9\xa2\x98\xe5\x8d\x81\xef\xbc\x9a\xe7\xbd\x91\xe7\xbb\x9c\xe5\xae\x89\xe5\x85\xa8']
如果是用遍历的方法或者print imglist[0]则会输出中文
这可是困扰了我一天的问题,到现在都没有结果,这是为什么呢?
为什么直接打印html输出的不是汉子呢,真是奇怪啊
关于Python中输出中文的一点疑问的更多相关文章
- iText中输出中文
原文链接 http://hintcnuie.iteye.com/blog/183690 转载内容 iText中输出中文,有三种方式: 1.使用iTextAsian.jar中的字体 BaseFont.c ...
- iText中输出 中文
iText中输出中文,有三种方式: 1.使用iTextAsian.jar中的字体 BaseFont.createFont("STSong-Light", "UniG ...
- Python中表示中文的pattern
Python中表示中文的pattern:[\u4e00-\u9fff] 汉字unicode码表: http://jlqzs.blog.163.com/blog/static/2125298320070 ...
- python中加入中文注释报错处理
python中加入中文注释,运行报错如下 解决方法: 在py文件的第一行加入 #coding:utf-8 即可
- Python中使用中文
python的中文问题一直是困扰新手的头疼问题,这篇文章将给你详细地讲解一下这方面的知识.当然,几乎可以确定的是,在将来的版本中,python会彻底解决此问题,不用我们这么麻烦了. 先来看看pytho ...
- python中打印中文
python中打印中文 在python 2.x版本中,默认是ASCII编码方式,在有业务需要输入中文时,就会出现乱码的情况.解决这种问题的一个方式就是设置py文件的编码方式.实现方式如下: 在py文件 ...
- sae python中Mysql中文乱码的解决
一開始我用的是: db=MySQLdb.connect(db=sae.const.MYSQL_DB,user=sae.const.MYSQL_USER,passwd=sae.const.MYSQL_P ...
- Python中输出格式化的字符串
在Python中,采用的格式化方式和C语言是一致的,用%实现,举例如下: >>> 'Hello, %s' % 'world' 'Hello, world' >>> ...
- Windows下Python中的中文路径和中文输出问题
这几天有个项目需要写一点类似于脚本的小程序,就用Python写了,涉及到中文路径和中文输出的问题,整理一下. 有一个问题我觉得需要先强调一下,在写Python程序的时候,一定保证编码是utf-8,然后 ...
随机推荐
- mvc 扩展htmlhelper
using System.Web.Mvc; namespace System.Web.Mvc{ public static class HtmlExtend { public ...
- Masonry学习分享
不完整目录 •UIScrollView 应用Masonry的正确用法 •tableHeaderView使用Masonry •同向文字显示优先级 1.基础篇 1.1基础使用 1.1.1运行效果 1.1. ...
- 理解Bitcode
用Xcode 7 beta 3在真机(iOS 8.3)上运行一下我们的工程,结果发现工程编译不过.看了下问题,报的是以下错误: 1 ld: ‘/Users/**/Framework/SDKs/Poly ...
- MVC强类型视图、强类型HTML辅助方法
强类型视图: <table> <tr> <td>ID:</td><td><%: Model.Id %></td> & ...
- JQuery html API支持解析执行Javascript脚本功能实现-代码分析
JQuery html用法(功能类似innerHTML) 开发中需要使用Ajax技术来更新页面局部区域, 使用的方法是ajax获取html代码段(字符串),然后将这个html代码段作为参数,传入目标D ...
- WCF服务接口多,客户端在引用时出错!报WCF The maximum nametable character count quota (16384) has been exceeded while reading XML data错误
WCF服务接口多,客户端在引用时出错!报WCF The maximum nametable character count quota (16384) has been exceeded while ...
- java学习:Hibernate入门
相对微软的linq-to-sql或EF框架而言,"Hibernate对于eclipse的集成开发“ 新手并不容易掌握,下面是新手上路的步骤: 一.准备工作: 1.先下载eclipse (官网 ...
- Scrum 项目7.0
一.内容 1.回顾组织 主题:“我们怎样才能在下个sprint中做的更好?” 时间:设定为1至2个小时. 参与者:整个团队. 场所:能够在不受干扰的情况下讨论. 秘书:指定某人当秘书,筹备.记录.整理 ...
- Bootstrap 响应式设计
本教程讲解如何在网页布局中应用响应式设计.在课程中,您将学到响应式 Web 设计.随着移动设备的普及,如何让用户通过移动设备浏览您的网站获得良好的视觉效果,已经是一个不可避免的问题了.响应式 Web ...
- 如何清除PL/SQL中的缓存
每次查询前清空缓存10g以上:alter system flush buffer_cache;9i:ALTER SESSION SET EVENTS 'immediate trace name flu ...