2013-06-23 36 views
3

我用下面statment获得HTML字符串:
如何使用urllib3打印原始的HTML字符串

import urllib3 

url ='http://urllib3.readthedocs.org/' 
http_pool = urllib3.connection_from_url(url) 
r = http_pool.urlopen('GET',url) 

print (r.data) 

但输出是:

b'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "b'\n<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"\n "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n\n\n<html xmlns="http://www.w3.org/1999/xhtml">\n <head>\n <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />\n \n\n .......................................\n</script>\n\n\n\n </body>\n</html>'' 

我怎样才能得到一个原始的HTML字符串?

+0

'sys.stdout.buffer.raw.write(r.data)' – falsetru

回答

2

的anwser是print (r.data.decode('utf-8'))
但这statment将在崇高的文本2
由于this issue的突破。
当我使用IDLE时,输出会很好。

+0

相关:http://stackoverflow.com/questions/3218014/unicodeencodeerror-gbk-codec-cant-encode-character-illegal-multibyte- sequen/3218048#3218048 –