0

我试图让每个屏幕截图文件都以日期结尾。它确实有效,但问题是当我拍摄新的屏幕截图时,它总是相同的日期。

这是代码

class ScrShot(object):    
    def Screenie(self):
            file_name = Filename('WFT-ScreenShot-'+str(date)+'.jpg')
            base.win.saveScreenshot(file_name) 
            print ':debug: screenshot taken!'
            print ':debug: screenshot saved as ', file_name ,''

instance = ScrShot()

base.accept('f9', instance.Screenie)

继承人使用的变量:

###########################################
#time
date = datetime.datetime.now().strftime('%Y-%m-%d-%H-%M-%S')
###########################################

另外,日志中的一些内容:

:debug: screenshot taken!
:debug: screenshot saved as  WFT-ScreenShot-2013-12-24-18-46-04.jpg
:debug: screenshot taken!
:debug: screenshot saved as  WFT-ScreenShot-2013-12-24-18-46-04.jpg
:debug: screenshot taken!
:debug: screenshot saved as  WFT-ScreenShot-2013-12-24-18-46-04.jpg

现在,还有其他更新日期的方法吗?

编辑:它确实解决了问题,但我也想保存在外部文件夹中。有没有办法做到这一点?

4

1 回答 1

2

将您的课程替换为:

class ScrShot(object):    
    def Screenie(self):
        file_name = Filename('WFT-ScreenShot-'+str(datetime.datetime.now().strftime('%Y-%m-%d-%H-%M-%S'))+'.jpg')
        base.win.saveScreenshot(file_name) 
        print ':debug: screenshot taken!'
        print ':debug: screenshot saved as ', file_name ,''

它输出所有相同的日期,因为您只分配date了一次。使用时不会自动更新date。当你想获得一个新的约会时,你必须now() 每次打电话。

于 2013-12-24T23:55:06.590 回答