如何使用Selenium Webdriver和Python保存具有唯一文件名的屏幕截图?

时间:2017-06-09 17:50:12

标签: python selenium selenium-webdriver webdriver

Selenium Webdriver是否可以创建具有唯一文件名的屏幕截图?如果我使用标准命令browser.save_screenshot(screenshot.png),我的Python脚本会在每次截屏时覆盖保存的屏幕截图。

但是,如果我执行类似以下操作来创建一个唯一的文件名并尝试将字符串解析为函数参数,则它不起作用,因为显然Python不会这样做。

from selenium import webdriver
import datetime
browser = webdriver.Firefox()
browser.get("http://www.google.com")
date_stamp = str(datetime.datetime.now()).split('.')[0]
date_stamp = date_stamp.replace(" ","_")
file_name = date_stamp + ".png"
browser.save_screenshot(file_name)

2 个答案:

答案 0 :(得分:1)

您的date_stamp会返回"2017-06-09_20:56:54.png"这样的文件名不可接受的内容。尝试使用

date_stamp = date_stamp.replace(" ", "_").replace(":", "_").replace("-", "_")

应返回有效名称

"2017_06_09_20_56_54.png"

答案 1 :(得分:0)

Math.pow(10,-4).toFixed(4)
Math.pow(10,-5).toFixed(5)

我有这样的。测试完成后,它会以名称创建时间生成屏幕截图