在ubuntu下python编码问题

#coding=utf-8
import chardet

import requests as requests
import sys

tar_url = "http://www.baidu.com"
header = {
    "User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linu…) Gecko/20100101 Firefox/55.0",
    "Accept": "text/html,application/xhtml+xm…plication/xml;q=0.9,*/*;q=0.8",
    "Accept-Language": "en-US,en;q=0.5",
    "Accept-Encoding": "gzip, deflate, br",
    "Referer": "http://zkeeer.space/",
    "Connection": "keep-alive",
    "Upgrade-Insecure-Requests": "1"
}
url_response = requests.get(url=tar_url, headers=header)
print sys.getfilesystemencoding()
print 'Html is encoding by : %',chardet.detect(url_response.content)print (url_response.status_code, url_response.text)


在ubuntu下如果要打印中文首先要记得
#coding=utf-8
在获取的html中发现英文正常显示,中文显示的是原始的编码方式如“百度搜索"变成了title="\u767e\u5ea6\u641c\u7d22" />

这种情况下是正常的,因为根据

print sys.getfilesystemencoding()
发现系统的编码方式是utf-8
print 'Html is encoding by : %',chardet.detect(url_response.content)
返回的html也是utf-8编码,这种显示只是因为consle没有识别编码而已,不影响程序的使用
如果想正常打印print只要一个参数如:
print url_response.text
就可以正常输出中文
至于为什么print两个参数会直接打印中文编码的编码值。。。还不清楚



你可能感兴趣的:(努力中···,python,中文输出原始编码)