大家好,今天分享一个困扰我很久的问题,初次学爬虫,去爬取百度网站的内容的时候,看到一串这样的代码。
import requests
from bs4 import BeautifulSoup
response = requests.get("https://www.baidu.com")
re_text = response.text
re_content = response.content
print (re_text)
print (type(re_text))
print (re_content)
print (type(re_content))
response.encoding = 'utf-8'
re_text = response.text
print (re_text)
这里response.encoding是什么意思呢?
我打开源码看到的是

我发现encoding是封装在Response这个类里面的。
然后我就试着直接输出response,发现其返回的就是一个Response对象。
我又接着写入了Response这个类中的变量status_code

访问成功,显示200。
总的来说,get和post方法返回的都是一个Response对象,所以也可以改变他的编码格式,但是请注意.text和.content的区别。
本文探讨了使用Python进行网页爬取时遇到的编码问题,详细解释了Response对象中的encoding属性的作用,以及如何通过设置编码来正确解析网页内容。同时对比了.text和.content方法的区别。
63万+

被折叠的 条评论
为什么被折叠?



