zoukankan      html  css  js  c++  java
  • 关于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则会得到

    ['xe7xbdx91xe7xbbx9cxe6x8ax80xe6x9cxafxe4xb8x8exe5xa4x9axe5xaax92xe4xbdx93xe6x8ax80xe6x9cxaf', 'Network Technology and Multimedia  Technology', '1. xe7x9fxa5xe8xafx86xe4xb8x8exe6x8ax80xe8x83xbd', '2. xe8xbfx87xe7xa8x8bxe4xb8x8exe6x96xb9xe6xb3x95', '3. xe6x83x85xe6x84x9fxe6x80x81xe5xbaxa6xe4xb8x8exe4xbbxb7xe5x80xbcxe8xa7x82', 'xe4xb8x93xe9xa2x98xe4xb8x80xefxbcx9axe5xa4x9axe5xaax92xe4xbdx93xe6x8ax80xe6x9cxaf1', 'xe4xb8x93xe9xa2x98xe4xbax8cxefxbcx9axe5xa4x9axe5xaax92xe4xbdx93xe8xafxbexe4xbbxb6xe8xaexbexe8xaexa1', 'xe4xb8x93xe9xa2x98xe4xb8x89xefxbcx9axe5xa4x9axe5xaax92xe4xbdx93xe8xafxbexe4xbbxb6xe5xbcx80xe5x8fx91', 'xe4xb8x93xe9xa2x98xe5x9bx9bxefxbcx9a xe7xbdx91xe7xbbx9cxe8xafxbexe7xa8x8bxe8xaexbexe8xaexa1', 'xe4xb8x93xe9xa2x98xe4xbax94xefxbcx9axe7xbdx91xe7xbbx9cxe8xafxbexe7xa8x8bxe5xbcx80xe5x8fx91', 'xe4xb8x93xe9xa2x98xe5x85xadxefxbcx9axe5xa4x9axe5xaax92xe4xbdx93xe6x8ax80xe6x9cxaf2', 'xe4xb8x93xe9xa2x98xe4xb8x83xefxbcx9axe6xa0xa1xe5x9bxadxe5xb1x80xe5x9fx9fxe7xbdx91xe7x9ax84xe6x9ex84xe5xbbxba', 'xe4xb8x93xe9xa2x98xe5x85xabxefxbcx9axe7xbdx91xe7xbbx9cxe6x9cx8dxe5x8axa1xe5x99xa8xe9x85x8dxe7xbdxaexe4xb8x8exe7xaexa1xe7x90x86', 'xe4xb8x93xe9xa2x98xe4xb9x9dxefxbcx9axe7xbdx91xe7xbbx9cxe8xaexbexe5xa4x87xe4xbax92xe8xbfx9e', 'xe4xb8x93xe9xa2x98xe5x8dx81xefxbcx9axe7xbdx91xe7xbbx9cxe5xaex89xe5x85xa8']
    

     如果是用遍历的方法或者print imglist[0]则会输出中文

    这可是困扰了我一天的问题,到现在都没有结果,这是为什么呢?

    为什么直接打印html输出的不是汉子呢,真是奇怪啊

  • 相关阅读:
    SQLServer2008新建链接服务器for Oracle
    提示Can't load package:dclite70.bpl解决方法
    android实现自动升级并安装打开
    【转】Ubuntu 14.04.3上配置并成功编译Android 6.0 r1源码
    Android日志打印类LogUtils,能够定位到类名,方法名以及出现错误的行数并保存日志文件
    Linux 自定义命令
    CentOS时间的查看与修改
    Linux expect自动登录ssh,ftp
    ★Linux命令行操作技巧(作为服务器端)
    ★Linux桌面系统技巧(作为客户端)
  • 原文地址:https://www.cnblogs.com/asworm/p/4845420.html
Copyright © 2011-2022 走看看