解决思路两种:
1.直接linux catalina.out读取:一分每10s轮询出现新的直接读取返回<br>
2.缓存注入cookie,先手动登录获取session 然后通过注入user,pwd 进cookie

 

import paramiko
import os
from time import sleep
class SSH(object): def __init__(self,host,port,user,pwd):
self.host=host
self.port=port
self.user=user
self.pwd=pwd
"""此方法是统计在登陆之前获取的服务日志code的数量"""
def before_count(self,logfile_absolute_path):
logfile_parentdir,logfile_name=os.path.split(logfile_absolute_path)
shell="cd {}; cat {}|grep 动态验证码为".format(logfile_parentdir,logfile_name)
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(self.host,self.port,self.user,self.pwd)
self.ssh=ssh
stdin, stdout, stderr = self.ssh.exec_command(shell)
res,err = stdout.readlines(),stderr.readlines()
result = res if res else err
return len(result)
# """其实这样写不是最好办法,解决多行根本是paramiko执行机制,
# 每次执行完ssh.exec_command()函数会自动回到session初始化root路径,多行建议以;分号隔开"""
def ssh_connect(self,logfile_absolute_path,beforecode_number):
target_code=""
for i in range(6):
logfile_parentdir,logfile_name=os.path.split(logfile_absolute_path)
shell="cd {}; cat {}|grep 动态验证码为".format(logfile_parentdir,logfile_name)
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(self.host,self.port,self.user,self.pwd)
self.ssh=ssh stdin, stdout, stderr = self.ssh.exec_command(shell)
res,err = stdout.readlines(),stderr.readlines()
result = res if res else err if len(result)> beforecode_number:
var=result[-1].strip()
a=var.split("-")[-1]
target_code=a.split(r":")[-1].strip()
break
else:
sleep(10)
self.ssh.close()
return target_code

  

cookie注入:见我csdn直接可以跑代码自己观察效果邮箱手动登录是有滑块拦截的

https://blog.csdn.net/chen498858336/article/details/83795911

动态验证码处理UI自动化获取处理的更多相关文章

  1. IDEA+java通过SSH来进行分析日志,实现UI自动化动态验证码登录

    在我写自动化脚本的时候是要真实发送验证码才能往下进行UI自动化 思路:验证码会显示在哪些地方,手机短信?数据库存储?日志? 完整代码如下: package guanyu.tools; import c ...

  2. Appium UI自动化的那些梗

    @作者 彭海波 转载请注明出处 前言 由于需求的快速迭代和敏捷测试的要求,在测试过程中引入自动化成为必不可少的手段.作为一个互联网测试团队,我们自然也引入了自动化测试这个环节.在众多的测试框架中,我们 ...

  3. 小心!做 UI 自动化一定要跨过这些坑

    一 .引子 UI自动化,在移动互联网时代的今天,一直都是在各大测试社区最为火爆的一个TOPIC.甚至在测试同行面前一提起自动化,大家就会自然而然的问:“恩,你们是用的什么框架?appium?还是rob ...

  4. UI自动化框架搭建之Python3

    UI自动化框架搭建--unittest 使用的代码是Python3版本,与时俱进哈哈 解释一下我的框架目录接口(每个人框架的目录接口不一样,根据实际要求) common目录:公共模块,这个地方可以存放 ...

  5. asp.net gridview动态添加列,并获取其数据;

    1,绑定数据前先动态添加列,见方法CreateGridColumn(只在第一次加载动态添加): 2,gvlist_RowDataBound为对应列添加控件: 前台代码: <%@ Page Lan ...

  6. 基于Selenium2+Java的UI自动化(4) - WebDriver API简单介绍

    1. 启动浏览器 前边有详细介绍启动三种浏览器的方式(IE.Chrome.Firefox): private WebDriver driver = null; private String chrom ...

  7. pywinauto处理UI自动化

    之前一个项目的特殊性, 以及一些操作权限上的问题,不能使用现有工具进行UI自动化. 在一些资深tester建议下决定采用Python的pywinauto模块来处理Windows控件的UI操作. 1. ...

  8. Python—UI自动化完整实战

    实战项目 均来源于互联网 测试报告2017年11月29日优化后的测试报告:https://github.com/defnngj/HTMLTestRunner 1.项目概述: 本实战已126邮箱为例子进 ...

  9. UI自动化(七)selenium简述

    1.什么是ui自动化模拟人用代码的方式去操作页面2.为什么要做ui自动化后期迭代的时候,老功能比较多,人工维护成本大这时候考虑引入ui自动化3.什么时候做ui自动化项目稳定,不在修改的某些老功能,为这 ...

随机推荐

  1. linux基础学习之软件安装以及常用命令(三)

    添加和查看用户: [root@localhost ~]# useradd anderson [root@localhost ~]# cat /etc/passwd 显示如下: [root@localh ...

  2. angular基于ui-router实现系统权限控制

    前端去实现权限控制听起来有点扯淡(实际也有点扯淡),掩耳盗铃,主要是担心安全问题,但是如果在前后端分离的情况下,需要做一个带有权限控制的后台管理系统,angular基于ui-router应该怎么做呢? ...

  3. Django基础七之Ajax

    一 Ajax简介 1.简介 AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步的Javascript和XML”.即使用Javascript语言与服务器进行异 ...

  4. react组件(react-grid-gallery)

    react有很多好玩的组件,react-grid-gallery就是其中一个,主要处理图片展示,对图片进行放大与缩小 文档:https://www.npmjs.com/package/react-gr ...

  5. C# 压缩图片到指定宽度,假如图片小于指定宽度 判断图片大小是否大于指定大小(KB) 如果大于则压缩图片质量 宽高不变

    class Program { static void Main(string[] args) {//G:\zhyue\backup\projects\Test\ConsoleApplication1 ...

  6. 用CSS的方法如何让一个元素不可见?(面试题目)

    面试中看到这个问题,自己想的不全面,下面整理下,一起学习: 一.CSS元素隐藏 在CSS中,让元素隐藏(指屏幕范围内肉眼不可见)的方法很多,有的占据空间,有的不占据空间:有的可以响应点击,有的不能响应 ...

  7. OpenGL学习--03--矩阵

    Model--View--Projection 1.tutorial03.cpp // Include standard headers #include <stdio.h> #inclu ...

  8. 拖拽进度条(SeekBar)

    拖拽进度条(SeekBar) 监听方法:setOnSeekBarChangeListener 监听器:SeekBar.OnSeekBarChangeListener 简单,直接上代码: 1.Activ ...

  9. Django settings介绍

    """ Django settings for macboy project. Generated by 'django-admin startproject' usin ...

  10. Linux Windows平台添加pip源

    直接应用 pip3 install django -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com​ ...