You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用当前日期时间命名截图路径异常:格式错误且生成空白文件

问题修复方案

1. 文件名格式异常的解决

你的代码里有两个导致文件名无法正常识别的问题:

  • Windows系统文件名不允许包含冒号(:),你用%H:%M生成的时间带冒号,会触发系统文件名非法校验,导致存储异常。
  • 路径里的反斜杠\是Python字符串的转义字符,比如\A会被解析为特殊字符,导致路径解析错误。

修改后的代码示例:

import datetime
now = datetime.datetime.now() 
# 将时间格式中的冒号替换为合法的横杠,同时用原始字符串避免转义问题
dt_string = now.strftime("%Y-%m-%d %H-%M")
self.driver.save_screenshot(r".\Screenshots\Add{dt_string}.png")

# 或者用跨平台通用的正斜杠路径
# self.driver.save_screenshot(f"./Screenshots/Add{dt_string}.png")

2. 空白截图的排查与修复

截图空白通常和页面加载状态或窗口状态相关,可从以下几点修复:

  • 确保页面完全加载:在截图前添加显式等待,等待页面关键元素加载完成后再执行截图,示例:
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.by import By
    
    # 等待指定元素出现(替换为你页面的关键元素定位)
    WebDriverWait(self.driver, 10).until(
        EC.presence_of_element_located((By.ID, "page_key_element"))
    )
    # 执行截图
    self.driver.save_screenshot(r".\Screenshots\Add{dt_string}.png")
    
  • 检查窗口状态:截图前确保浏览器窗口未被最小化,可调用self.driver.maximize_window()将窗口最大化。
  • 验证页面渲染:确认当前页面确实有内容渲染,排除网络延迟、页面加载失败等导致的空白情况。

内容的提问来源于stack exchange,提问作者Suchilita Swain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 04:40:36