Python3,5行代码,让你拥有无限量壁纸美图,终于告别手动下载了。

举报
Carl_奕然 发表于 2023/02/24 15:19:06 2023/02/24
【摘要】 365天壁纸都不同, 心里美滋滋。

1、引言


小屌丝:鱼哥, 你电脑桌面壁纸挺好看啊。
小鱼:那是, 毕竟我的审美观在这摆着呢。
小屌丝:你这话,让我不服…
小鱼:不服? 是不服气,还是不舒服?? 你说全了
小屌丝:服,必须服,很服气的那种!
小鱼:服气就行。
小屌丝:我对你的审美观服气,但是,不服气你能找到那么多美丽的壁纸。
小鱼:这有何难度。
小屌丝:好看的壁纸,要么是需要注册会员,要么是收费的,你咋还有第三种方式?
小鱼:别说第三种, 第四种方式也能整出来。
小屌丝:我不信, 我就是不信。
小鱼:呦呵, 今天是长能耐了, 还不信我的"探(bai)索(piao)"技能。
小屌丝:对啊, 要不,share一下?
小鱼:就让你服气。


2、代码实战


一张好看的壁纸,

  • 能让你对工作充满动力;
  • 让你对生活充满激情;
  • 让你对自己充满能量;


所以,你看,一张壁纸能有这么多好处,还在犹豫什么呢?
今天就跟着小鱼,一起免费获取壁纸, 每天一张,100年不重复。


2.1 手动下载


如果你不会python,不会写代码, 可以手动实现下载壁纸,
方法很简答, 只需要访问 Microsoft Bing 网站即可免费下载 你想要的一切图片。

  • 明星
  • 摄影
  • 壁纸
  • 动漫
  • 美图


你想要的, 这里都有。

2.2 代码批量下载


如果你不喜欢手动下载,那么,自动下载,就是懒人必备的操作。
因为代码很简单,
所以,这里就不过多介绍,我直接上代码。

代码示例

# -*- coding:utf-8 -*-
# @Time   : 2023-02-15
# @Author : Carl_DJ


'''
实现功能:
    通过访问 https://bingw.jasonzeng.dev  进行批量下载壁纸
'''

import  requests
from pathlib import Path
import  os.path

#批量下载图片,并保存指定路径

def pic_save(path:Path):
    #循环获取300张壁纸
    for n in range(300):
        #参数化index
        pic_url = f"http://bingw.jasonzeng.dev?resolution=UHD&index={n}"

        #打开url
        with requests.get(pic_url) as r:
            #保存 获取到的壁纸
            with open(path / f"{i}.jpg","wb") as w:
                w.write(r.content)


if __name__ == '__main__':
    pic_path = Path('./data/pic')
    #如果没有pic_path文件夹,就自动创建
    if not os.path.exists(pic_path):
        os.mkdir(pic_path)
    pic_save(pic_path)
    print(f'壁纸下载完成!')


下载展示

小鱼:服吗?
小屌丝:这个… 可以服。

3、总结


到这里,今天的分享差不多就该结束了。
今天主要是通过 使用requests 和pathlib 两个模块, 来进行图片的批量下载及保存。
回想一下, 也就几行代码的事, 还是很简单的。
所以, 能让代码实现的,就不需要手动下载嘛。

我是小鱼:

  • CSDN 博客专家;
  • 阿里云 专家博主;
  • 51CTO博客专家;
  • 51认证讲师;
  • 金牌面试官;

关注我,带你学习更多更有趣的Python知识。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。