3 回答
TA贡献1865条经验 获得超7个赞
我认为你的想法是完全正确的。
首先,在下载任何内容之前,您将列出文件夹中的所有文件名,将该列表存储在变量中,比方说。然后,您开始从Web下载文件,之后,再次列出所有文件名并存储在第二个列表中。现在,您将比较2个列表,并知道哪些文件是新的(刚刚下载)。然后,您只需循环访问这些新文件,然后以所需的模式对其进行重命名即可。我会在一分钟内添加代码current_files
import glob
current_files = glob.glob("/path/Downloads/*.pdf")
# ['path/Downloads/abc.pdf', 'path/Downloads/xyz.pdf']
# your code to download files from the web
new_files = set(glob.glob("/path/Downloads/*.pdf")) - set(current_files)
# ['path/Downloads/just_downloaded1.pdf', 'path/Downloads/just_downloaded2.pdf']
for file in new_files:
#do the rename code here to your new files
TA贡献1851条经验 获得超3个赞
使用 os.重命名(旧、新)。
os.renames(旧的,新的)递归目录或文件重命名功能。工作原理类似于 rename(),除了首先尝试创建使新路径名良好所需的任何中间目录。重命名后,将使用 removedirs() 修剪掉与旧名称最右边的路径段相对应的目录。
引用
https://docs.python.org/3/library/os.html
添加回答
举报