本文共 2242 字,大约阅读时间需要 7 分钟。
本模块主要用于获取当前的日期以及时间,用于生成保存截图文件目录名等场景。
1 import time, os 2 from datetime import datetime 3 4 5 # 输出当前时间格式:年-月-日 6 def currentDate(): 7 date = time.localtime() 8 # 输出:time.struct_time(tm_year=2018, tm_mon=1, tm_mday=21, tm_hour=23, tm_min=27, tm_sec=43, tm_wday=6, tm_yday=21, tm_isdst=0) 9 # 构造今天的日期字符串10 today = str(date.tm_year) + "-" + str(date.tm_mon) + "-" + str(date.tm_mday)11 return today12 13 14 # 输出当前时间格式:时-分-秒15 def currentTime():16 timeStr = datetime.now()17 now = timeStr.strftime("%H-%M-%S")18 return now19 20 21 # 创建目录:年月日为父目录,时分秒为子目录22 def createDir():23 # 获得当前文件所在目录的绝对路径24 currentPath = os.path.dirname(os.path.abspath(__file__))25 today = currentDate()26 dateDir = os.path.join(currentPath, today)27 print("日期目录:%s" % dateDir)28 if not os.path.exists(dateDir):29 # 如果以今天日期命名的目录不存在则创建30 os.mkdir(dateDir)31 now = currentTime()32 timeDir = os.path.join(dateDir, now)33 print("时间目录:%s" % timeDir)34 if not os.path.exists(timeDir):35 # 如果以今天日期命名的目录不存在则创建36 os.mkdir(timeDir) 37 38 return timeDir39 40 41 if __name__ == "__main__":42 print(createDir())
封装异常截图。
1 from selenium import webdriver 2 import DateUtil 3 import os 4 import traceback 5 import time 6 7 8 # 封装截屏方法 9 def take_screen_shot(driver, savePath, picName):10 # 构造截屏路径及图片名11 picPath = os.path.join(savePath, picName+".png")12 try:13 driver.get_screenshot_as_file(picPath)14 print("截图成功:%s" % picName+".png")15 except Exception:16 print("截图失败:%s" % traceback.print_exc())17 18 19 # 测试示例20 if __name__ == "__main__":21 picDir = DateUtil.createDir()22 23 def test():24 try:25 # 序号用来作为文件名结尾,防止文件名重复26 num = 027 driver = webdriver.Chrome()28 driver.get("http://www.baidu.com")29 assert "hiphop" in driver.page_source30 except AssertionError as e:31 num += 132 take_screen_shot(driver, picDir, "AssertionError"+str(num))33 except Exception as e:34 num += 135 take_screen_shot(driver, picDir, "Exception"+str(num))36 37 test()
转载地址:http://gybyz.baihongyu.com/