我希望批量下载大量文件(> 800)。我有一个文本文件,其中包含所有文件名的列表。然后使用这些文件名派生可从中下载的URL。我一直使用python脚本解析文件,使用子进程来记录文件。
wget ftp://ftp.name.of.site/filename-prefix/filename/filename+suffix
然而,由于我不知道的原因,wget未能正确连接。我想知道我是否可以使用一个以类似方式工作的ftp程序,即无需登录并保留在命令行中。
编辑: 我的文本文件中有什么:
ERS032033
ERS032214
ERS032234
ERS032223
ERS032218
ERS ###充当前缀。整个事情就是文件名。最终文件(即文件名+后缀)如下所示:ERS032033_1.fastq.gz
提交正确的网址不是问题。
答案 0 :(得分:1)
由于您使用的是Python,我建议删除子流程方法并改为使用urllib
模块:
import urllib
handle = urllib.urlopen('ftp://ftp.name.of.site/filename-prefix/filename/filename+suffix')
print handle.read()
handle.close()
假设您使用的是Python 2({3}}用于Python 3)
如果您只需要批量下载,urllib.request是一种更清洁的方法。