这个示例使用的Python版本为3.7版本,
一、bing壁纸接口
访问bing的官网,通过浏览器开发者工具,查看网络可以找到一个请求壁纸的接口,至于怎么判断的,我是发现当我把鼠标放在切换壁纸的左右箭头时,发现发送了一个请求,查看请求里面是有当前的壁纸信息的,链接、描述等等……
于是乎得到了这个接口,这个接口似乎就是获取壁纸信息的接口了
https://cn.bing.com/HPImageArchive.aspx"htmlcode">
pip install requests获取壁纸json数据
#!/usr/bin/python import requests import time # 时间戳 timestamp = str(int(time.time() * 1000)) # 拼接请求地址 url = 'https://cn.bing.com/HPImageArchive.aspx"htmlcode">{ "images": [{ "startdate": "20200921", "fullstartdate": "202009211600", "enddate": "20200922", "url": "/th", "urlbase": "/th", "copyright": "马塔马塔附近的霍比特人村,新西兰北岛 (© 500px Asia/Getty Images)", "copyrightlink": "https://www.bing.com/search", "title": "", "quiz": "/search", "wp": true, "hsh": "fab9fa6464d63e134ae0415d9f67aac5", "drk": 1, "top": 1, "bot": 1, "hs": [] }], "tooltips": { "loading": "正在加载...", "previous": "上一个图像", "next": "下一个图像", "walle": "此图片不能下载用作壁纸。", "walls": "下载今日美图。仅限用作桌面壁纸。" } }获取到图片地址后,就可以下载图片了,再结合上面的代码,加上下面的保存图片代码
# 获取第一个图片的链接 image_url = result['images'][0]['url'] # 拼接上bing的域名 image_url = 'https://cn.bing.com' + image_url # 定义图片保存地址 save_image_file = '/opt/images/bing.jpg' # 下载图片 r = requests.get(url=image_url, headers=headers) # 注意要以二进制只写打开文件 with open(save_image_file, 'wb') as f: # 图片的二进制数据 f.write(r.content)好了,图片下载好并保存了,根据bing接口返回的数据,根据网友们的说法,最大可以获得16张bing壁纸图片,通过跳转idx和n这两个参数,有兴趣可以试试,这里我就不再多说了,另外这个程序可以再做一些拓展,把多张bing壁纸保存下来。
完整的代码如下#!/usr/bin/python import requests import time # 时间戳 timestamp = str(int(time.time() * 1000)) # 拼接请求地址 url = 'https://cn.bing.com/HPImageArchive.aspx"_blank" href="https://www.microsoft.com/en-us/bing/bing-wallpaper" rel="external nofollow" >https://www.microsoft.com/en-us/bing/bing-wallpaper如果能看到最后,或对你有帮助的话,欢迎在评论区留言一起交流。
以上就是Python 下载Bing壁纸的示例的详细内容,更多关于Python 下载Bing壁纸的资料请关注其它相关文章!