#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中输出中文的一点疑问的更多相关文章

  1. iText中输出中文

    原文链接 http://hintcnuie.iteye.com/blog/183690 转载内容 iText中输出中文,有三种方式: 1.使用iTextAsian.jar中的字体 BaseFont.c ...

  2. iText中输出 中文

    iText中输出中文,有三种方式: 1.使用iTextAsian.jar中的字体    BaseFont.createFont("STSong-Light", "UniG ...

  3. Python中表示中文的pattern

    Python中表示中文的pattern:[\u4e00-\u9fff] 汉字unicode码表: http://jlqzs.blog.163.com/blog/static/2125298320070 ...

  4. python中加入中文注释报错处理

    python中加入中文注释,运行报错如下 解决方法: 在py文件的第一行加入   #coding:utf-8  即可

  5. Python中使用中文

    python的中文问题一直是困扰新手的头疼问题,这篇文章将给你详细地讲解一下这方面的知识.当然,几乎可以确定的是,在将来的版本中,python会彻底解决此问题,不用我们这么麻烦了. 先来看看pytho ...

  6. python中打印中文

    python中打印中文 在python 2.x版本中,默认是ASCII编码方式,在有业务需要输入中文时,就会出现乱码的情况.解决这种问题的一个方式就是设置py文件的编码方式.实现方式如下: 在py文件 ...

  7. sae python中Mysql中文乱码的解决

    一開始我用的是: db=MySQLdb.connect(db=sae.const.MYSQL_DB,user=sae.const.MYSQL_USER,passwd=sae.const.MYSQL_P ...

  8. Python中输出格式化的字符串

    在Python中,采用的格式化方式和C语言是一致的,用%实现,举例如下: >>> 'Hello, %s' % 'world' 'Hello, world' >>> ...

  9. Windows下Python中的中文路径和中文输出问题

    这几天有个项目需要写一点类似于脚本的小程序,就用Python写了,涉及到中文路径和中文输出的问题,整理一下. 有一个问题我觉得需要先强调一下,在写Python程序的时候,一定保证编码是utf-8,然后 ...

随机推荐

  1. gdb调试,自动显示多个变量的值

    调试程序的时候有时候要一行监控多个变量的值, 可以这样写: p {var1, var2, var3} 要跟踪程序自动显示,可以使用display display {var1, var2, var3}要 ...

  2. Linux下安装vsftpd

    一.安装vsftpd及相关依赖包 #vsftpd安装程序 yum install vsftpd #vsftpd虚拟登陆账户必要依赖包 yum install pam* db4* 安装完之后,vsftp ...

  3. Linux内核设计第二周——操作系统工作原理

    Linux内核设计第二周 ——操作系统工作原理 作者:宋宸宁(20135315) 一.实验过程 图1 执行效果 从图中可以看出,每执行my_ start_ kernel函数两次或一次,my_ time ...

  4. TF-IDF 文本相似度分析

    前阵子做了一些IT opreation analysis的research,从产线上取了一些J2EE server运行状态的数据(CPU,Menory...),打算通过训练JVM的数据来建立分类模型, ...

  5. spring 以Ant Build方式运行build.xml文件,报warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds 的解决办法

    Buildfile: F:\experience\spring_pdf\sourcecode\example1\build.xml compile: [javac] F:\experience\spr ...

  6. Android You need to use a Theme.AppCompat theme (or descendant) with this activity.

    错误描述为:java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with ...

  7. App软件开发的10个常用技巧

    移动应用市场用户争夺战日益激烈,原来做APP拼想法拼创意拼是否抓住用户痛点.现在,精细化用户体验成为了一个APP能否留存用户的关键问题,一旦用户觉得体验不畅,马上就有竞品APP后补,如何开发高性能的移 ...

  8. linux连接与传输等命令

    linux 远程连接windows rdesktop -a 16 223.223.111.8 远程连接到windows服务器 rdesktop -a 16 -r disk:home=/home 223 ...

  9. Linux:安装OpenSSH-Server E:Package openssh-server has no installation candidate

    $sduo apt-get install openssh-server Reading package lists… Done Building dependency tree Reading st ...

  10. Velocity(4)——大小写

    Velocity是大小写敏感的.但是为了减少使用者的错误,某些地方存在特殊情况. 比如$foo.bar,首先会被检查是否能匹 配$foo.getbar(),再被检查是否能匹配$foo.getBar() ...