python requests返回中文乱码

  最近在使用python爬取高考分数线时,获得的response里面输出了中文乱码:

from bs4 import BeautifulSoup
import requests

def get_provice_link(url):
    response=requests.get(url)

    print(response.text)
    soup=BeautifulSoup(response.text,'lxml')
    print(soup.title)

def main():
    url='http://www.gaokao.com/beijing/fsx/'
    get_provice_link(url)

if __name__ == '__main__':
    main()

 

  解决方案是:将response设置编码格式,一般的如果网页中没有标明type格式,一般默认的都是'ISO-8859-1'编码,我们只需要把编码格式转为  'gb2312' 即可

添加一行代码:下面标红的,这样就可以解决。

 response=requests.get(url)
    response.encoding = 'gb2312'
    print(response.text)

 

 

posted @ 2018-09-20 20:02  大神笨蛋  阅读(4089)  评论(0编辑  收藏  举报