我有一个小程序可以在我的电脑上正常工作,但我想让它可移植。它的作用是从互联网上下载图像,设置为桌面背景,等待一分钟并更新图像。我知道我不能直接写到像appdata这样的文件夹,因为我不知道使用电脑的人的用户名。我需要将下载的图像保存在某个地方,因此我会将其保存在Windows Temp
文件夹中。
我认为会有一些选择(但我不知道如何在python中执行此操作)
%temp%
之类的内容访问该文件夹。我想尝试不必使用Python 3中默认包含的另一个模块,因为我想稍后cx_freeze它。
import pythoncom
from urllib import request
from win32com.shell import shell, shellcon
from time import sleep
def get_image():
f = open('C:\\Users\\MyUser\\Desktop\\Python\\bg\\bg.jpg', 'wb') #Open old image
f.write(request.urlopen('blalbla.com/foo/img.jpg').read()) #Get new image and write
f.close()
pathtoimg = 'C:\\Users\\MyUser\\Desktop\\Python\\bg\\bg.jpg'
count = 0
while 1:
get_image()
iad = pythoncom.CoCreateInstance(shell.CLSID_ActiveDesktop, None,
pythoncom.CLSCTX_INPROC_SERVER, shell.IID_IActiveDesktop)
iad.SetWallpaper(pathtoimg, 0)
iad.ApplyChanges(shellcon.AD_APPLY_ALL)
count += 1
print(count)
sleep(60)
答案 0 :(得分:1)
使用它来定位Temp:
import os
mytmpdir = os.environ['TEMP'] #Must be uppercase