首页 > 编程语言 >Python学习笔记:必应壁纸下载

Python学习笔记:必应壁纸下载

时间:2023-11-09 09:44:43浏览次数:37  
标签:get Python url2 笔记 url json import 壁纸 requests

GitHub 上开源的必应壁纸 API 作为数据来源。

-- 1.开源地址
https://github.com/zenghongtu/bing-wallpaper

-- 2.请求接口
https://bingw.jasonzeng.dev/

一、接口使用说明

1.API

接口:https://bingw.jasonzeng.dev

2.分辨率 resolution

默认分辨率为:1920×1080,其他可设置参数为:

UHD      # 高清 图片质量好
1920x1200
1920x1080
1366x768
1280x768
1024x768
800x600
800x480
768x1280
720x1280
640x480
480x800
400x240
320x240
240x320

3.返回格式 format

返回的格式默认为 json,未设置的情况下,会直接重定向为壁纸图片。

4.指定天数(索引) index

索引默认从 0 开始,获取今天的图像。1 获取昨天的,以此类推。

负数则反序,-1 获取最近一天图像。

random 选择随机一天。

5.日期 date

使用日期进行获取,从 20190309 至今,按此格式。

6.图像宽度 w

7.图像高度 h

8.图像质量 qlt

取值为 0-100

二、实操

1.请求

http://bingw.jasonzeng.dev?resolution=UHD&index=random&w=1000&format=json

2.返回

{
    "startdate":"20190814",
    "copyright":"Male and female Ecuadorian horned anoles in Mindo, Ecuador (© James Christensen/Minden Pictures)",
    "urlbase":"/th?id=OHR.HornedAnole_EN-US5022096617",
    "title":"Lizard of mystery",
    "url":"https://www.bing.com/th?id=OHR.HornedAnole_EN-US5022096617_UHD.jpg&w=1000"
}

三、Python调用

1.简单例子

import requests
import json
import os
os.chdir(r'C:\Users\111\Desktop\wallpaper')

url = "http://bingw.jasonzeng.dev?resolution=UHD&index=random&w=1000&format=json"
print(url)
res = requests.get(url)
url2 = json.loads(res.text)['url']
print(url2)
res2 = requests.get(url2)

with open('test.jpg', 'wb') as w:
    w.write(res2.content)

2.循环遍历

# -*- coding: utf-8 -*-
"""
Created on Thu Nov  9 09:23:20 2023

@author: Hider
"""
import requests
import json
import os
os.chdir(r'C:\Users\111\Desktop\wallpaper')
import time

def get_wallpaper():
    for i in range(100):
        print(f'-------- {i} --------')
        url = f'http://bingw.jasonzeng.dev?resolution=UHD&index={i}&w=1920&h=1080&format=json&qlt=100'
        print(url)
        res = requests.get(url)
        url2 = json.loads(res.text)['url']
        print(url2)
        res2 = requests.get(url2)
        with open(f'image/{i}.jpg', 'wb') as w:
            w.write(res2.content)
        time.sleep(5)

if __name__ == "__main__":
    get_wallpaper()

3.结果展示

参考链接:bing-wallpaper

参考链接:用Python下载壁纸并自动更换桌面

标签:get,Python,url2,笔记,url,json,import,壁纸,requests
From: https://www.cnblogs.com/hider/p/17819027.html

相关文章

  • 大道至简读书笔记10月
    在阅读《大道至简》的第一章之后,我深感震撼和启发。作者以简洁明晰的语言,展示了大道至简的哲学思想,传达了一种深邃而卓越的智慧。首先,本章着重强调了简洁的重要性。作者指出,在这个信息爆炸的时代,人们往往被琐事所困扰,无法专注于自己真正关心的事物。大道至简的思想告诉我们,要学会......
  • PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SV
    全文下载链接:http://tecdat.cn/?p=26219最近我们被客户要求撰写关于银行机器学习的研究报告,包括一些图形和统计输出。该数据与银行机构的直接营销活动相关,营销活动基于电话。通常,需要与同一客户的多个联系人联系,以便访问产品(银行定期存款)是否会(“是”)或不会(“否”)订阅银行数据......
  • 【操作系统学习笔记03】
    以下是下面链接中教程的笔记,如有侵权请联系我删除。随便学学可能不严谨,但如果有离谱错误烦请指正。https://www.bilibili.com/video/BV1YE411D7nH?p=3&vd_source=febdc1a8028af6b442667407286a2750操作系统引导——如何让操作系统运行磁盘中独立于各可见分区,存在【主引导......
  • python获取当前日期的前一天
     fromdatetimeimportdatetime,timedelta#获取当前日期today=datetime.today()#获取前一天的日期yesterday=today-timedelta(days=1)#格式化日期为所需的字符串格式date_str=yesterday.strftime("%Y-%m-%d")print("前一天的日期是:",date_str) ......
  • python json.loads()字符串转json
    python json.loads()字符串转jsonimportjsonimportrequestsres='''{"code":200,"message":"success","duration":147,"result":{"angle":0,"height":368,"tables":[],&qu......
  • numpy.meshgrid() in Python
    numpy.meshgrid函数用于从表示笛卡尔索引或矩阵索引的两个给定一维数组中创建矩形网格。网格函数是从MATLAB中得到启发的。语法numpy.asarray(arr,dtype=None,order=None)参数x1,x2,…,xn:array_like表示网格坐标的一维数组。indexing:{‘xy’,‘ij’},可选输出的笛卡尔(‘xy......
  • [机器学习复习笔记] BGD, SGD, MBGD
    BGD,SGD,MBGD1.BGD批量梯度下降法(BatchGradientDescent)1.1批量梯度下降法介绍在梯度下降法每次迭代中,将所有样本用来进行参数\(\theta\)(梯度)的更新,这其实就是批量梯度下降法。批量梯度下降法的损失函数表达式:\[E=\frac{1}{2n}\sum_{i=1}^{n}(y^{(i)}-f......
  • Python实验:Socket编程
    实验六Socket编程一、实验目标:了解TCP协议原理、标准库socket的用法、熟悉Socket编程。1.TCP协议原理:TCP(TransmissionControlProtocol,传输控制协议)是一种面向连接的、可靠的、基于流的协议,用于在计算机网络中传输数据。它是互联网协议套件中的一部分,通常与IP(Internet......
  • 【Flask框架】全知识点笔记4章60页MD文档,今日篇:flask视图和路由进阶
    本文的主要内容:flask视图&路由、虚拟环境安装、路由各种定义、状态保持、cookie、session、模板基本使用、过滤器&自定义过滤器、模板代码复用:宏、继承/包含、模板中特有变量和函数、Flask-WTF表单、CSRF、数据库操作、ORM、Flask-SQLAlchemy、增删改查操作、案例、蓝图、单元测......
  • openGauss学习笔记-118 openGauss 数据库管理-设置数据库审计-维护审计日志
    openGauss学习笔记-118openGauss数据库管理-设置数据库审计-维护审计日志118.1前提条件用户必须拥有审计权限。118.2背景信息与审计日志相关的配置参数及其含义请参见表1。表1审计日志相关配置参数配置项含义默认值audit_directory审计文件的存储目录。/......