从循环中保存文件而不覆盖

Saving Files from a Loop Without Overwrite

目前我的 python 脚本(使用 'Spynner')有一个循环,其中包含:

browser.load(url)
time.sleep(5)
browser.snapshot().save('example.png')

...但问题是,每次循环循环时,它都会用新渲染的 URL 的图像覆盖先前存储的图像(每次循环 URL 都会更改 运行) 而不是制作一个新图像,与之前的图像分开。我已经创建了一个计数,但出于某种原因:

browser.snapshot().save((count)'.png')

好像不行。如何使用定义的计数作为 .save 文件名的一部分?

谢谢

试试这个

for counter,url in enumerate(urls):
    browser.load(url)
    time.sleep(5)
    browser.snapshot().save(str(counter) + '.png')

或者只设置计数器 = 0,然后 运行 循环,每次保存后递增计数器,如下所示:-

counter = 0
for url in urls:
    browser.load(url)
    time.sleep(5)
    browser.snapshot().save(str(counter) + '.png')
    counter += 1
browser.snapshot().save('{:03d}.png'.format(count))

应该这样做。如果需要,您可以将格式运算符 (:03d) 更改为更大的数字。

这将为您提供 000.png001.png 等格式的文件。仅使用 str(count)+'.png' 不会在前面填充零,从而使以后的文件处理更加困难