总结一下,关于获取到的信息编码失败。
刚才在执行代码的时候,发现一个问题:
然后修改代码如下:
'''
爬取知乎界面的标题
'''
import requests import re import sys import io sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030') #改变标准输出的默认编码 headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36' } r = requests.get("https://www.zhihu.com/explore",headers = headers) print(r.text) #正则表达式找标题 pattern = re.compile('data-za-element-name="Title">(.*?)</a>', re.S) titles = re.findall(pattern, r.text) print(titles)
执行成功: