Python 自动获取 Bing 壁纸

每当我使用 Bing 的时候,总会被它那漂亮的壁纸吸引。那么你想不想轻松获取这些高质量的图片?然后用在博客、PPT、文章配图等场景。本文告诉你方法。

Python 批量下载

该方法基于一个 Bing 壁纸 API[1]

用浏览器访问 https ://bingw.jasonzeng.dev,你可以看到一张高清图片。

我们可以用 Python 来调用它,然后批量保存下来,比如说下载最近 100 天的图片:

import requests
from pathlib import Path

def save_pic(path:Path):
    for i in range(100):
        url = f"http://bingw.jasonzeng.dev?resolution=UHD&index={i}"
        with requests.get(url) as r:
            with open(path/f"{i}.jpg","wb") as w:
                w.write(r.content)


if __name__ == "__main__":
    saved_path = Path("/Users/aaron/Downloads/bing_pic")
    saved_path.mkdir(parents = True, exist_ok = True)
    save_pic(saved_path)

执行上面的代码,就可以在目标路径看到下载的高清图片,有些照片的大小能达到 12.5MB:

133b7f30a622242b6c1e2da2a3c3f298.jpeg

接口介绍:

1、传入 resolution 参数可以指定壁纸图像的分辨率。默认为1920x1080,可选值如下:

  • UHD

  • 1920x1200

  • 1920x1080

  • 1366x768

  • 1280x768

  • 1024x768

  • 800x600

  • 800x480

  • 768x1280

  • 720x1280

  • 640x480

  • 480x800

  • 400x240

  • 320x240

  • 240x320

UHD 就是高清,图片比较大。

2、传入 index 可以获取哪天的图片,0 表示今天,1 表示昨天,以此类推,index=random 表示随机一天。

3、传入 date 可以获取从某某一天到今天的图片,比如 data=20210401。

4、传入 w 和 h 可以指定图片的宽度和高度。

5、传入 qlt 可以指定图片的质量,取值范围是 0 到 100。

在 CSS 中使用

background-image: url(https://bingw.jasonzeng.dev/?index=random);
height: 100%;
background-position: center;
background-repeat: no-repeat;
background-size: cover;

最后的话

如果有帮助,请点赞、转发、在看,感谢支持。

214776d75fb3e11e0e7abee0d92dc0dc.jpeg

参考资料

[1]

Bing 壁纸 API: https://github.com/zenghongtu/bing-wallpaper

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值