是否有一种简单的方法可以从多个(按顺序编号的)网站下载图像文件,并更改文件名以匹配下载位置?
例如,
www.001.mysite.com/photo.jpg
www.002.mysite.com/photo.jpg
...
...
www.050.mysite.com/photo.jpg
每张网站上的照片名称相同。是否可以下载这些照片,将它们重命名为photo001.jpg(对应于它来自的网站),并将它们放入当前日期的目录中?
我从一些搜索开始......找到了有助于部分内容和其他部分有不同部分的想法,但是当我尝试使其工作时,我得到的一切都没有或错误。
答案 0 :(得分:0)
你可以使用Bash,但我不知道Bash,所以这里是一个Python示例,利用多个并发进程来减少等待Web服务器,以防你需要下载大量的图像:
import os
num_images = 100 # change me
num_concurrent = 4 # to be tweaked
i = 0
while i < num_images:
calls = []
for i2 in range(num_concurrent):
# this will download 0, 1, ..., 9, 10, 11
# change the number format if necessary
call = "curl www.{0}.mysite.com/photo.jpg > {0}.jpg".format(i)
calls.append(call)
i += 1
os.system(" & ".join(calls))
这将运行批量num_concurrent
图像下载。我建议你在调整时保守一点,因为非常多的并发连接会对TCP拥塞控制造成严重破坏,并且可能会阻止你从目标网站上被阻止。