提问人:vee2gee 提问时间:8/29/2023 更新时间:9/23/2023 访问量:13
保存新文件并在每次运行程序时重复?
Saving new file and repeat each time the program is run?
问:
所以我正在尝试编写我自己的程序,如果你甚至可以这样称呼它的话。我正在使用 pyautogui、time 和 os 模块 atm,一切都是花花公子。我面临的问题是我正在打开记事本,粘贴我的内容并尝试在每次运行时将其保存为新文件。
我可以使用 pyautogui 来查找要访问的位置并单击,但我认为我可以省去麻烦,只需将 Web 中的内容粘贴到文本文件中并保存,每次运行脚本时都会重复。
我得到了以下内容:
os.system('start notepad.exe')
time.sleep(5)
pyautogui.hotkey(['ctrl', 'v'])
pyautogui.hotkey(['ctrl', 's'])
我想我能做的是:
file = open('Overload.txt', 'x')
pyautogui.hotkey(['ctrl', 'v'])
pyautogui.hotkey(['ctrl', 'v'])
我知道我必须在任何一个之前放置一个 for 或 while 循环,但不知道我应该在哪里添加一个函数,它再次运行而不会覆盖旧文本,而是保存一个新的文本文件,例如具有相同名称的备份,例如,Overload(1).txt 并注明日期。
TLDR:尝试从 Web 创建重复相同文件名但不替换的文本备份文件。像文件日志一样排序。
我 Googlfu 这个问题并通读了一些,但要么是不同的语言,我刚刚开始学习,要么只是提到我不需要使用的 x、w、r、a+ 的基础知识。
答:
0赞
vee2gee
9/23/2023
#1
这是解决方案:
pyautogui.click(txtBox)
pyautogui.hotkey('ctrl', 'a')
pyautogui.hotkey('ctrl', 'c')
time.sleep(5)
filename = "Overload.txt"
counter = 1
while os.path.exists(filename):
filename = f"Overload.{counter}.txt"
counter += 1
with open(filename, "w", encoding="utf-8") as newfile:
newfile.write(pyperclip.paste())
评论
0赞
vee2gee
9/23/2023
对不起,如果您不理解代码并且/或有疑问,我没有评论代码。请让我知道或询问。
评论