>  Q&A  >  본문

python - ulipad爬网页时中文为何是16进制?

#! /usr/bin/env python
#coding=utf-8
import urllib

url = "http://www.tust.edu.cn"
content = urllib.urlopen(url).read()
print content

python初学者,也是编程初学者。
上面是代码,用python2.7编译的时候网页上的中文可以正常显示,但是用ulipad编译的时候,网页中的文字就是以16进制的方式显示的。请问这个是什么问题?

我搜索的时候,看到有的回答说是在代码后面加上encode

然而我在content后面接encode('utf-8')或者encode('gb2312')的时候都会提示报错

ascii codec can't decode byte 0Xef in position 0:ordinal not in range

我查了一下,找到了下面这个网址

http://blog.csdn.net/qian_f/a...

好像是说是字符编码不统一的问题。紧接着我查了一下read返回的好像就是byte string呀....

求各位大神解答...

怪我咯怪我咯2718일 전480

모든 응답(2)나는 대답할 것이다

  • 怪我咯

    怪我咯2017-04-18 10:31:31

    개인적인 이해에 따르면 read()의 기본 인코딩은 웹페이지 콘텐츠를 구문 분석할 수 없다는 것입니다. 정보를 확인하고 read의 괄호에 인코딩을 지정해 보세요.

    회신하다
    0
  • 阿神

    阿神2017-04-18 10:31:31

    unicode.encode(content,'utf-8');

    회신하다
    0
  • 취소회신하다