📚博客主页:knighthood2001
✨公众号:认知up吧 (目前正在带领大家一起提升认知,感兴趣可以来围观一下)
🎃知识星球:【认知up吧|成长|副业】介绍
❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更新的动力❤️
🙏笔者水平有限,欢迎各位大佬指点,相互学习进步!
根据图片链接保存图片
打开xhs具体的图文,然后查看网页源代码,可以发现如下图所示的链接。
其中就是无水印图片,因此我们可以通过爬虫爬取图片,保存到本地。
我的想法就是首先有了这个图片链接,我是如何实现将其保存到本地的,这里涉及到爬虫的基础知识,如果不会的,可以去稍微学习一下。
大致内容就是,用requests库爬取图片中的二进制内容,然后将其保存为本地图片。这里以时间戳命名(如果你有更好的想法,可以换成你的图片命名格式)
import requests
import os
#TODO 使用时间戳当作文件名称
def get_time():
import time
timestamp = int(time.time())
return timestamp
#TODO 实现从网页图片保存到本地,输入为图片网址和保存路径
def image_save(image_url, path):
if not os.path.exists(path): # 如果文件夹不存在,则创建
os.makedirs(path)
# 发送 GET 请求获取图片数据
response = requests.get(image_url)
# 确保请求成功
if response.status_code == 200:
image_name = get_time()
image_name = "{}.png".format(image_name)
# 指定图片保存路径
save_path = os.path.join(path, image_name) # 这里将图片保存在名为 images 的文件夹中
# 将图片数据写入文件
with open(save_path, 'wb') as f:
f.write(response.content)
print(f'图片已保存为: {save_path}')
return save_path
else:
print(f'下载图片失败,状态码: {response.status_code}')
if __name__ == '__main__':
# url = "http://sns-webpic-qc.xhscdn.com/202404092124/89528a44fb46c019c1ac1bc0373925cf/1040g2sg311b4gmuqmo5g5nv0nhlgbg9uaa63rrg!nd_dft_wlteh_webp_3"
url = "http://sns-webpic-qc.xhscdn.com/202404092124/c713227f5265e09db798bd34b3b7f218/1040g2sg311b4gmuqmo505nv0nhlgbg9usa9jsrg!nd_dft_wlteh_webp_3"
image_save(url, "images")
以上代码是python爬虫的基本操作,首先会判断是否有相应目录,如果没有就创建,然后把图片爬取下来,并以时间戳命名。
缺点
目前这个代码只是保存了一张图片,而且还需要进行查看网页源代码,复制出对应的图片链接。是不是非常麻烦,因此接下来就会对其进行优化。