我的python学习之路----转换位串到utf-8字符串

>>>req = urllib.request.urlopen(request,timeout=1000)
>>> req.readall()
b'<!DOCTYPE HTML>\r\n\t<head>\r\n\t\t<meta charset="utf-8" />\r\n\t\t<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />\r\n\t\t<title>5173 - \xe4\xb8\xad\xe5\x9b\xbd\xe7\xbd\x91\xe7\xbb\x9c\xe6\xb8\xb8\xe6\x88\x8f\xe6\x9c\x8d\xe5\x8a\xa1\xe7\xbd\x91</title>\r\n\t\t<meta name="keywords" content="5173,\xe8\xa3\x85\xe5\xa4\x87\xe4\xba\xa4\xe6\x98\x93,\xe7\x9b\x9b\xe5\xa4\xa7,\xe5\xbe\x81\xe9\x80\x94,\xe7\x83\xad\xe8\xa1\x80\xe6\xb1\x9f\xe6\xb9\x96,\xe6\xad\xa6\xe6\x9e\x97\xe5\xa4\x96\xe4\xbc\xa0,\xe9\xad\x94\xe5\x9f\x9f,\xe5\xb7\xa8\xe4\xba\xba,\xe8\xb5\xa4\xe5\xa3\x81,\xe6\xa2\xa6\xe5\xb9\xbb\xe8\xa5\xbf\xe6\xb8\xb8,\xe9\xad\x94\xe5\x85\xbd\xe4\xb8\x96\xe7\x95\x8c,\xe5\x8d\x83\xe5\xb9\xb43,\xe8\xb7\x91\xe8\xb7\x91\xe5\x8d\xa1\xe4\xb8\x81\xe8\xbd\xa6" />\r\n\t\t<meta name="description" content="\xe4\xb8\xad\xe5\x9b\xbd\xe7\xbd\x91\xe7\xbb\x9c\xe6\xb8\xb8\xe6\x88\x8f\xe4\xba\xa4\xe6\x98\x93\xe9\x97\xa8\xe6\x88\xb7,\xe5\xbe\x81\xe9\x80\x94|\xe7\x83\xad\xe8\xa1\x80\xe6\xb1\x9f\xe6\xb9\x96|\xe6\xad\xa6\xe6\x9e\x97\xe5\xa4\x96\xe4\xbc\xa0|\xe9\xad\x94\xe5\x85\xbd\xe4\xb8\x96\xe7\x95\x8c|\xe9\xad\x94\xe5\x9f\x9f|\xe5\xb7\xa8\xe4\xba\xba|\xe5\xa5\x87\xe8\xbf\xb9\xe4\xb8\x96\xe7\x95\x8c|\xe5\xa4\xa9\xe9\xbe\x99\xe5\x85\xab\xe9\x83\xa8|\xe9\x97\xae\xe9\x81\x93|\xe9\xa3\x8e\xe4\xba\x91|\xe8\xaf\x9b\xe4\xbb\x99|\xe6\xa2\xa6\xe5\xb9\xbb\xe8\xa5\xbf\xe6\xb8\xb8|\xe5\x8d\x83\xe5\xb9\xb43|\xe8\xb5\xa4\xe5\xa3\x81|\xe8\xb7\x91\xe8\xb7\x91\xe5\x8d\xa1\xe4\xb8\x81\xe8\xbd\xa6\xe7\xad\x89\xe7\xbd\x91\xe7\xbb\x9c\xe6\xb8\xb8\xe6\x88\x8f\xe9\xa2\x86\xe5\x85\x88\xe4\xba\xa4\xe6\x98\x93\xe5\xb9\xb3\xe5\x8f\xb0,\xe6\x98\xaf\xe4\xb8\xad\xe5\x9b\xbd\xe7\x94\xb5\xe5\xad\x90\xe5\x95\x86\xe5\...'


python 3输出位串,而不是可读的字符串,需要对其进行转换

使用str(string[, encoding])对数组进行转换

>>> str(req.readall(),'utf-8')
'<!DOCTYPE HTML>\r\n\t<head>\r\n\t\t<meta charset="utf-8" />\r\n\t\t<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />\r\n\t\t<title>5173 - 中国网络游戏服务网</title>\r\n\t\t<meta name="keywords" content="5173,装备交易,盛大,征途,热血江湖,武林外传,魔域,巨人,赤壁,梦幻西游,魔兽世界,千年3,跑跑卡丁车" />\r\n\t\t<meta name="description" content="中国网络游戏交易门户,征途|热血江湖|武林外传|魔兽世界|魔域|巨人|奇迹世界|天龙八部|问道|风云|诛仙|梦幻西游|千年3|赤壁|跑跑卡丁车等网络游戏领先交易平台,是中国电子商务诚信单位。" /><meta name="keywords" content="5173,装备交易,盛大,征途,热血江湖,武林外传,魔域,巨人,赤壁,梦幻西游,魔兽世界,千年3,跑跑卡丁车" />\r\n\t\t<script src="http://m.5173cdn.com/files/default/scripts/public.js?v=20110620" type="text/javascript" ></script>...'


参考:

http://stackoverflow.com/questions/606191/convert-byte-array-to-python-string


阅读更多

更多精彩内容