使用下载文件更改壁纸

时间:2016-08-18 22:22:15

标签: python download ctypes urllib wallpaper

我有一个python脚本,从技术上来说应该将我的壁纸更改为下载的.jpg文件。虽然代码执行没有任何错误,我的壁纸变为黑色而没有图像。我不确定我是否犯了错误,或者有一种不同的方法可行。谢谢你看,干杯!

我正在运行Windows版本的Python(v3.6.0a4)

import ctypes
import urllib
import os 
import urllib.request


SPI_SETDESKWALLPAPER = 20 
f = open('env.jpg','wb')
f.write(urllib.request.urlopen('http://i68.tinypic.com/vzhlrp.jpg').read())
path = os.getcwd() + "\env.jpg"

print("\n" + path)


ctypes.windll.user32.SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, path , 0)

我也尝试将路径更改为'C:\ env.jpg',它也不起作用。

编辑还尝试了一个更稳定的python版本,v3.5.1,仍然无法正常工作

EDIT 2 最后想通了,我需要添加f.close()来关闭流。

import ctypes
import urllib
import os 
import urllib.request


SPI_SETDESKWALLPAPER = 20 
f = open('env.jpg','wb')
f.write(urllib.request.urlopen('http://i68.tinypic.com/vzhlrp.jpg').read())
f.close() #THIS LINE MADE ALL THE DIFFERENCE

path = os.path.join(os.getcwd(), "env.jpg")

print("\n" + path)



ctypes.windll.user32.SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, path , 0)

0 个答案:

没有答案