百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Selenium 自动化框架

off999 2025-05-25 14:49 29 浏览 0 评论

设计初衷

这个框架一开始就是为了自动化而产生的,因为之前公司有浏览器自动化的需求。一开始的框架其实是非常简陋的,然后因为业务已经稳定了,所以不敢做太大变更。在离职后好好的总结了一下,重新将框架重构。

有什么用

高度封装 Selenium 的操作,只要配置 json 就能够实现想要的功能。提供后台动态修改配置,为所要网站更改页面元素快速解决。从此不用再走修改框架源码,上传 git 然后拉取到线上服务器这些繁琐流程。为你省下更多时间喝咖啡。



架构 前端 vue 后端 flask 自动化 titans

目录结构

+---abstracts // 抽象类
+---bin // 二进制文件
+---components // 组件
+---configs // 配置文件
+---core // 核心逻辑
+---hooks // 钩子
+---logs // 日志
+---manages // 全局管理类
+---storages // 存储保存位置
|   \---cookies
+---utils // 通用工具
复制代码

组件

│  click.py                 点击操作类                    
│  content.py               html标签内容获取类                    
│  cookie.py                cookie操作类                        
│  for.py                   for循环流程类                    
│  if.py                    if流程类                    
│  iframe.py                iframe操作类            
│  input.py                 输入操作类                    
│  javascript.py            javascript代码执行类                  
│  judge.py                 条件判断类                      
│  request.py               请求类                          
│  sleep.py                 睡眠延时类                        
│  wait.py                  等待事件类                       
│  while.py                 while循环类        
│  window.py                window标签页切换类
复制代码

整体流程



如何使用?

这里以自动化百度搜索为例子,首先我们需要如下的配置

[
  {
    "component": "request",
    "args": {
      "url": "https://www.baidu.com"
    },
    "type": "browser"
  },
  {
    "component": "input",
    "args": {
      "xpath": "//input[@id='kw']",
      "text": "Python"
    },
    "type": "text"
  },
  {
    "component": "click",
    "args": {
      "xpath": "//input[@id='su']"
    }
  },
  {
    "component": "sleep",
    "args": {
      "time": 3600
    }
  }
]
复制代码

配置中使用 {} 作为一个组件的调用,[] 作为一个作用域来使用。 {} 有三个基本参数:

args 配置参数

type 组件使用具体方法

component 所使用的组件名称

[] 主要是作用域,用于 if, for, while 循环这些有自己作用域的组件,然后在里面调用 {} 就可以 实现流程控制了

具体效果如下:



项目地址:
github.com/dmf-code/titans

wiki 地址:
github.com/dmf-code/titans/wiki

相关推荐

win10下载游戏用什么软件(win10下载游戏用什么软件好)

Windows10系统可以使用以下游戏下载器:1.Steam:Steam是最受欢迎的游戏下载器之一,拥有大量游戏可供下载。2.GOGGalaxy:GOGGalaxy是一个专门为GOG平台设计...

注册hotmail免费邮箱(注册hotmail邮箱需要手机吗)
  • 注册hotmail免费邮箱(注册hotmail邮箱需要手机吗)
  • 注册hotmail免费邮箱(注册hotmail邮箱需要手机吗)
  • 注册hotmail免费邮箱(注册hotmail邮箱需要手机吗)
  • 注册hotmail免费邮箱(注册hotmail邮箱需要手机吗)
win8系统对硬件的要求(win8.1 硬件要求)

需要硬件,音响的提升不太大,大灯看个人对灯光的需求,常开豪车的可能会觉得iq灯更舒服,其实标配的大灯满足日常生活没问题了。驾驶辅助包目前不选配的情况下车道保持可以通过刷机刷出来,后期应该能实现交通标志...

电信宽带办理套餐(电信宽带办理套餐最低多少)

1、每月99元(全国流量20G):送100M宽带+全国流量20G+300分钟通话+光猫免费+4K高清机顶盒免费+免费上门+免费安装(限城中村或部分竞争小区办理)2、每月119元(全国流量40G):送3...

qq号注册微信(qq号注册微信账号教程)

1、直接进入微信,点击下方的注册。2、它要我们输入电话号,别担心,我们按它的来,之后这个手机号是可以解除绑定的,不会有任何影响。3、之后会发验证码给你,输入后就能到这个界面,我的手机是自动输入并跳转到...

windows10录屏快捷键(windows10录屏快捷键ctrl加什么)
  • windows10录屏快捷键(windows10录屏快捷键ctrl加什么)
  • windows10录屏快捷键(windows10录屏快捷键ctrl加什么)
  • windows10录屏快捷键(windows10录屏快捷键ctrl加什么)
  • windows10录屏快捷键(windows10录屏快捷键ctrl加什么)
硬盘调整分区大小工具
  • 硬盘调整分区大小工具
  • 硬盘调整分区大小工具
  • 硬盘调整分区大小工具
  • 硬盘调整分区大小工具
电脑分辨率在哪里调(win10分辨率怎么调)

调整电脑分辨率的方法取决于您使用的是Windows、macOS还是Linux操作系统。以下是针对这三种操作系统的调整分辨率方法:1.Windows操作系统:-在桌面空白处右键单击,选择"显...

rar暴力破解器安卓版(暴力破解器压缩包)

安卓手机锁屏密码忘了,解决方法步骤如下:1.首先拆下手机电池,等待三秒钟以上时再装回电池,同时按下“音量上”和“电源键”并保持10秒钟以上时,手机自动进入recovery模式。2.在recovery模...

电脑开机慢是硬盘问题吗(电脑开机慢是硬盘坏了吗)

  电脑开机有两个含义,第一个就是通电,显示器上有显示;第二个是进系统。  电脑不装硬盘,只能达到第一种效果,系统肯定是进不去的,因为系统是装在硬盘上的,没有硬盘,就没有系统,也就启动不了。  当然,...

磁力种子(磁力种子搜索器怎么用)

BT的种子是指在BitTorrent文件分享协议中的一个文件或者目录,其中包含有一个或多个文件的元数据,例如文件名、大小、哈希值等信息。一个种子文件可以看做是一个索引,用来描述一个或多个文件的组成和布...

app store直接下载(app store直接下载软件)
  • app store直接下载(app store直接下载软件)
  • app store直接下载(app store直接下载软件)
  • app store直接下载(app store直接下载软件)
  • app store直接下载(app store直接下载软件)
windows图片查看器无法显示此图片

是因为没有正确配置Windows颜色系统默认设备文件造成的,解决该问题的具体步骤是:打开控制面板,查看方式选择“大图标”,单击打开“颜色管理”对话框,单击选中“高级”选项卡,将Windows颜色系统设...

ghost xp下载g(ghost Xp下载16)
  • ghost xp下载g(ghost Xp下载16)
  • ghost xp下载g(ghost Xp下载16)
  • ghost xp下载g(ghost Xp下载16)
  • ghost xp下载g(ghost Xp下载16)
深度技术的win7系统怎么样(深度技术win7系统怎么安装教程)

所谓的纯净的win7系统应该说的就是原版的win7系统,相对于Ghost版的系统来说,原版的win7系统是微软发布的未经过第三方修改过的纯净版系统,安装好后,它所有的功能和软件都是微软官方的,不会添加...

取消回复欢迎 发表评论: