>백엔드 개발 >파이썬 튜토리얼 >Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다.

Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다.

WBOY
WBOY앞으로
2023-04-10 15:01:031107검색


Wallpaper API

여기서는 GitHub의 오픈 소스 Bing Wallpaper API를 배경화면 소스로 사용합니다

​https://github.com/zenghongtu/bing-wallpaper

Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다.

From From 읽어보기를 보면 웹 애플리케이션에서는 다음 참조만 사용하면 된다는 것을 알 수 있습니다

<img  src="https://img.php.cn/"/ alt="Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다." >

너무 편리합니다

인터페이스 사용하기

API의 구체적인 호출 규칙을 살펴보겠습니다

1. 수신 해상도 매개변수는 배경화면 이미지의 해상도를 지정합니다. 기본값은 1920x1080이고 선택 값은 다음과 같습니다.

UHD
1920x1200
1920x1080
1366x768
1280x768
1024x768
800x600
800x480
768x1280
720x1280
640x480
480x800
400x240
320x240
240x320

UHD는 고화질을 의미하며 사진이 더 큽니다.

2. 특정 날짜의 사진을 얻으려면 인덱스를 전달하세요. 0은 오늘, 1은 어제 등을 의미하며 index=random은 임의의 날짜를 의미합니다.

3. 특정 날짜부터 오늘까지의 사진을 가져오려면 날짜를 전달하세요(예: data=20210401).

4. w와 h를 전달하여 이미지의 너비와 높이를 지정합니다.

5. 이미지 품질을 지정하려면 qlt를 전달하세요. 값 범위는 0~100입니다.

예를 들어

브라우저에 다음 주소를 직접 입력하면

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

출력:

{
 "startdate": "20220105",
 "copyright": "Plate-billed mountain toucan in Bellavista Cloud Forest Reserve, Ecuador (© Tui De Roy/Minden Pictures)",
 "urlbase": "/th?id=OHR.MountainToucan_EN-US7120632569",
 "title": "A plate-billed mountain toucan",
 "url": "https://www.bing.com/th?id=OHR.MountainToucan_EN-US7120632569_UHD.jpg&w=1000"
}

꽤 편리하다고 할 수 있습니다

css에서도 바로 사용할 수 있습니다

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

파이썬 호출

봅시다 Python을 통한 호출도 매우 간단합니다

import requests


def get_wallpaper():
for i in range(30):
url = "https://bingw.jasonzeng.dev?resolutinotallow=UHD&index=%s" % str(i)
print(url)
res = requests.get(url)
with open("wallpaper/" + "%s.jpg" % str(i),"wb") as w:
w.write(res.content)


if __name__ == "__main__":
get_wallpaper()

위 코드는 처음 30개의 배경화면을 가져오는 것입니다. 범위 매개변수를 수정하여 다양한 수의 배경화면을 얻을 수 있습니다.

캡처 효과는 다음과 같습니다.

Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다.

변경 Desktop

wallpaper 이제 바탕화면을 자동으로 전환해 보겠습니다. 여기서는 win32con과 win32gui를 사용하여 바탕화면을 조작합니다

def windows_img(paper_path):
k = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control panel\Desktop", 0, win32con.KEY_SET_VALUE) # 在注册表中写入属性值
win32api.RegSetValueEx(k, "wapaperStyle", 0, win32con.REG_SZ,"2")# 0 代表桌面居中 2 代表拉伸桌面
win32api.RegSetValueEx(k, "Tilewallpaper", 0, win32con.REG_SZ,"0")
win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, paper_path, win32con.SPIF_SENDWININICHANGE) # 刷新桌面

그런 다음 다운로드한 바탕화면에서 사진을 선택하세요

def change_wallpaper():
pic_list = os.listdir("wallpaper")# 得到文件路径下的Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다.,列表类型
i=0
print(pic_list)
while True:
pic = "wallpaper"+'{}'.format(pic_list[i])
abspath_pic = os.path.abspath(pic)
windows_img(abspath_pic)
print(abspath_pic)
time.sleep(1000)# 设置壁纸更换间隔
i += 1
if i==len(pic_list):# 如果是最后一张Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다.,则重新到第一张
i=0

if __name__ == '__main__':
change_wallpaper()

이것은 바탕화면 배경화면을 자동으로 전환하는 간단한 도구입니다. . , 와서 시험해 보세요!

위 내용은 Python을 사용하여 배경 화면을 다운로드하고 자동으로 바탕 화면을 변경합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제