我正在尝试使用python包下载新文件。我所能做的就是下载喜欢
outdir = ""
url = ""
filename = wget.download(url, out=outdir)
但是我怎么能告诉 wget 只下载新文件呢?在命令行中,我做到了
wget -N url
仅下载新文件。python 包 wget 似乎没有任何等效于 -N 标志?有谁知道是否有办法使用 wget for python 做到这一点,或者是否有另一个 python 包可以做到这一点?
如果这是你正在谈论的 wget 库,那么它是建立在 urllib 之上的,而不是围绕 wget
的包装器。所以你有几个选择。
-
如果你想用这个库使用 -N 功能,你必须自己实现它。以下是
wget
如何确定什么是新文件。有 3 种不同的技术可用于实现此目的。它查找尚不存在的文件名。对于 HTTP,它会查找上次修改标头。对于 FTP,它使用 LIST 命令,然后尝试解析输出,就好像输出与ls -l
命令的输出相同一样。 -
如果在路径中具有
wget
可执行文件的系统上运行此脚本,则可以使用子进程。
这是代码。
import subprocess
url = ''
subprocess.Popen(['wget', '-N', url])