python3爬链家utf8页面,中文全部是“南京小区二手房(南京链家网)”

练习爬虫,抓取链家页面信息,链家页面是utf-8,print出来后中文乱码

import requests
from bs4 import BeautifulSoup

url = 'http://nj.lianjia.com/xiaoqu/'
html = requests.get(url)
soup = BeautifulSoup(html.text,'lxml')
title = soup.title.get_text()
print(title)

得到的是“南京小区二手房(南京链家网)”这玩意,请问如何能正常显示中文?

阅读 9.4k
2 个回答
# -*- coding: utf-8 -*-


import requests
from bs4 import BeautifulSoup

url = 'http://nj.lianjia.com/xiaoqu/'
html = requests.get(url)
soup = BeautifulSoup(html.text.encode(html.encoding), 'lxml', from_encoding='utf-8')
title = soup.title.get_text()
print(title)

1) 加 # -- coding: utf-8 --声明
2) 正确的处理返回的response的编码

楼上没错,实际上你也可以用Latin1编码来解码这段文字。

import requests
from bs4 import BeautifulSoup

url = 'http://nj.lianjia.com/xiaoqu/'
html = requests.get(url)
soup = BeautifulSoup(html.text, 'lxml')
title = soup.title.get_text()
print(title.encode('latin1').decode('utf-8'))
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题