import requests
from bs4 import BeautifulSoup
import chardet
def get_charset(byte_str):
charset=chardet.detect(byte_str)['encoding']
return charset
r=requests.get('http://xiaorui.cc/2016/02/19/代码分析python-requests库中文编码问题/')
r.encoding=get_charset(r.content)
soup=BeautifulSoup(r.text,'lxml')
soup.text
乱码的原因主要是网页的字符集和你输出的字符集不一致造成的,让你的输出和采集到的字符集保持一致就可以了
我这里用requests
urllib库也是一样的