当前位置: 首页 > wzjs >正文

江苏省住房与城乡建设厅网站首页wordpress指定关键词自动内链

江苏省住房与城乡建设厅网站首页,wordpress指定关键词自动内链,网络设计课程有哪些,网站开发与发布报错截图设计方案: ​ 功能:截图层主要用来存放selenium运行时的报错截图信息 1. 截图路径管理 分层存储:在项目根目录下创建 screenshots 文件夹,并按日期进一步分类(如 20250601)。命名规范&#xff1…

报错截图设计方案:

​ 功能:截图层主要用来存放selenium运行时的报错截图信息

1. 截图路径管理

  • 分层存储:在项目根目录下创建 screenshots 文件夹,并按日期进一步分类(如 20250601)。
  • 命名规范:截图文件名包含错误类型和精确时间戳(如 error_el_message_20250601_143022.png),便于快速定位问题。
  • 自动创建目录:使用 os.makedirs(exist_ok=True) 确保目录存在,避免手动创建。

2. 多类型错误检测

  • 多样化定位策略:支持 XPath、ID、ClassName、CSS 选择器等多种定位方式,覆盖不同框架的错误组件(如 Element UI、Ant Design)。
  • 关键词扫描:若未找到特定错误组件,扫描页面源码中的错误关键词(如 error错误异常)。
  • 自定义错误类型:为不同定位方式设置专属错误类型标签(如 el_messageant_message),便于后续分析。

3. 智能错误捕获

  • 显式等待机制:使用 WebDriverWait 等待错误元素出现,避免因页面加载延迟导致的误判。

  • 异常处理

    • 捕获 TimeoutExceptionNoSuchElementException 以跳过不存在的定位器。
    • 处理页面源码扫描时的异常,并记录为 page_source_error
  • 多轮检测:先检查特定错误组件,再扫描页面源码,确保全面覆盖。

4. 信息完整性

  • 错误信息记录:截图时保存错误文本内容(如 用户名不存在/密码错误),便于后续分析。
  • 操作反馈:通过打印日志提示截图路径和错误详情,支持自定义消息。

5. 扩展性设计

  • 可配置定位器:错误定位器以元组形式存储在列表中,便于添加新的定位方式。
  • 错误类型分类:支持自定义错误类型标签,方便后续统计和筛选。

6. 异常安全保障

  • 多层异常捕获:在不同层级捕获异常,确保即使某个检测环节失败,仍能生成通用错误截图。
  • 健壮的路径生成:使用 os.path 模块处理路径,确保跨平台兼容性。

示例代码:

class ErrorChecker:def __init__(self, driver):self.driver = driverdef get_screenshot_path(self, error_type="unknown"):"""获取截图保存路径"""# 获取项目根目录project_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))# 在项目根目录下创建screenshots文件夹screenshot_dir = os.path.join(project_root, "screenshots")# 创建截图目录(如果不存在)os.makedirs(screenshot_dir, exist_ok=True)# 获取当前日期作为子文件夹名date_folder = time.strftime("%Y%m%d")screenshot_path_dir = os.path.join(screenshot_dir, date_folder)# 创建日期子目录(如果不存在)os.makedirs(screenshot_path_dir, exist_ok=True)# 生成带完整日期时间的截图文件名timestamp = time.strftime("%Y%m%d_%H%M%S")return os.path.join(screenshot_path_dir, f"error_{error_type}_{timestamp}.png")def save_screenshot(self, error_type="unknown", message=""):"""保存截图并打印消息"""screenshot_path = self.get_screenshot_path(error_type)self.driver.save_screenshot(screenshot_path)if message:print(message)print(f"📸 错误截图已保存至: {screenshot_path}")return Truedef check_and_capture_error(self):"""检查页面是否存在错误提示,并在发现时截图"""# 定义多种定位方式的错误提示元素error_locators = [# XPath定位(By.XPATH, "//div[contains(@class, 'el-message--error')]//p", "el_message"),(By.XPATH, "//div[contains(@class, 'ant-message-error')]", "ant_message"),(By.XPATH, "//div[contains(@class, 'error-text')]", "error_text"),(By.XPATH, "//div[contains(@class, 'toast-error')]", "toast_error"),# ID定位(By.ID, "errorMessage", "error_message_id"),(By.ID, "error-container", "error_container_id"),# Class Name定位(By.CLASS_NAME, "error-message", "error_message_class"),(By.CLASS_NAME, "alert-danger", "alert_danger_class"),# CSS选择器定位(By.CSS_SELECTOR, ".error-box .message", "error_box_css"),(By.CSS_SELECTOR, "#errorContent", "error_content_css"),# Name属性定位(By.NAME, "error-display", "error_display_name"),(By.NAME, "errorInfo", "error_info_name")]try:# 遍历所有可能的错误提示元素for locator_type, locator_value, error_type in error_locators:try:error_element = WebDriverWait(self.driver, 1).until(EC.visibility_of_element_located((locator_type, locator_value)))error_text = error_element.textreturn self.save_screenshot(error_type, f"⚠️ 捕获到错误: {error_text}")except (TimeoutException, NoSuchElementException):continue# 如果没有找到自定义错误提示,则检查页面是否存在其他错误try:# 获取页面源码page_source = self.driver.page_source# 如果页面中包含常见的错误关键词,则进行截图error_keywords = ['error', 'exception', 'failed', '错误', '异常', '失败']for keyword in error_keywords:if keyword.lower() in page_source.lower():return self.save_screenshot(f"keyword_{keyword}", f"⚠️ 捕获到错误关键词: {keyword}")print("✅ 未发现任何错误")return Falseexcept Exception as e:return self.save_screenshot("page_source_error", f"❌ 检查错误时发生异常: {str(e)}")except Exception as e:return self.save_screenshot("general_error", f"❌ 检查错误时发生异常: {str(e)}")
http://www.dtcms.com/wzjs/804321.html

相关文章:

  • 商城网站模板源码微信营销软件平台
  • 拼客多网站多少钱可以做可以做推广的平台
  • 品牌网站建设小7蝌蚪视频剪辑培训班
  • 手机网站内容规划all import wordpress
  • 网站建设维护方向上海到北京专线物流
  • 网站模板设计师要求学校建设网站拓扑图
  • 公司网站百度推广dw个人网站模板下载
  • 专业外贸网站制作公司宁波网站建设 慕枫科技
  • 彩票网站 建设wordpress 路径标签
  • 深圳龙华汽车网站建设广州网站建设联系新科海珠
  • 网站建设学习学校职业教育网站建设方案
  • 大连网站建设服务公司推广公司违法吗
  • python 网站开发教程百度推广营销方案
  • 谷歌英文网站优化wordpress安装位置
  • 浙江公司网站建设制作在linux上做网站搭建
  • 做网站翻页怎么做邯郸市城市建设局网站
  • 网站图片怎么做才有吸引力雷州市住房和城乡规划建设局网站
  • 找公司建网站重庆百度地图都导航不出来的
  • 做网站多大华为网站搭建
  • 河北涿州建设局网站佛山外贸网站建设公司
  • 网站内容维护更新方法建站之星安装说明
  • 房子装修设计app自动seo优化
  • 南京网站开发南京乐识专业phpcms漏洞
  • 建设旅游网站的意义破解php网站后台账号密码
  • 专做商铺中介网站上海 网站开发 外包
  • 小程序网站模板上海招聘信息网官网
  • 东莞网站的制作设计vs网站开发效果图
  • 深圳本地招聘网站网页设计与网站建设报告
  • 保定网站建设系统亚翔建设集团有限公司网站
  • 网易云音乐网站开发介绍互动科技网站建设