📚博客主页:knighthood2001
✨公众号:认知up吧 (目前正在带领大家一起提升认知,感兴趣可以来围观一下)
🎃知识星球:【认知up吧|成长|副业】介绍
❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更新的动力❤️
🙏笔者水平有限,欢迎各位大佬指点,相互学习进步!
获取xhs网页源代码
今天开始学习xhs的爬取。我会带着大家一步一步进行相关功能的完善,当然,笔者的水平也有限。目前带大家完善的是爬取xhs某一博主下面所有图文的图片,保存到本地。
代码如下:
import requests
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36"
}
url = "https://www.xiaohongshu.com/explore/661216c7000000000401818d"
response = requests.get(url, headers=headers)
print(response.content.decode())
这段代码是使用Python中的requests库发送HTTP请求来获取一个网页的内容,并使用指定的headers来模拟浏览器发送请求。让我逐步解释一下:
-
import requests
: 导入了Python的requests库,用于发送HTTP请求。 -
headers
: 这是一个字典类型的变量,用于设置请求头信息。在这个例子中,设置了一个User-Agent头部,模拟了Chrome浏览器的请求。 -
url
: 这是要请求的网页的URL地址。 -
response = requests.get(url, headers=headers)
: 使用requests库的get方法发送了一个GET请求,获取了指定URL的网页内容,并将响应保存在response变量中。通过传递headers参数,模拟了浏览器发送请求的行为。 -
print(response.content.decode())
: 打印了响应内容。response.content返回的是以字节形式表示的响应内容,使用decode方法将其解码成字符串,并打印出来。
这段代码打印的是网页的原始源代码,而不是经过浏览器渲染后的内容。因为它使用的是requests库发送的HTTP请求,所以获取的是服务器返回的未经过任何客户端渲染的HTML源代码。
细节
从中可以注意到的几个细节:
- headers里面只需要一个
User-Agent
,代码也能爬取到相应内容,这个后续在其他一些使用场景下,可能就不够了,需要添加cookie啥的。 response.content
的内容,你看情况需要进行decode或者转编码。