Web自动化测试中12306登陆中想着模拟鼠标去拖动滑块完成验证,试了很久发现了一种方法可以来绕过浏览器的检测来完成验证.

话不多说,直接上图和代码

selenium我用的是3.多的版本,如果是4.多的版本定位元素语法可能是:

driver.findElement(By.id("J-login"));

首先是所需要的的导入的jar包

下面是主方法:

package com.zmy.Test;
import java.util.concurrent.TimeUnit;
import org.junit.Assert;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.support.ui.Select;public class WebAnto_12306 {public static void main(String[] args) throws InterruptedException {// 配置谷歌驱动System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe");// 驱动自动控制软件标识ChromeOptions options = new ChromeOptions();options.addArguments("--disable-blink-features=AutomationControlled");options.setExperimentalOption("excludeSwitches", new String[] { "enable-automation" });// 创建驱动对象ChromeDriver driver = new ChromeDriver(options);// 窗口最大化driver.manage().window().maximize();// 隐式等待10sdriver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);// 打开12306官网driver.get("https://www.12306.cn/index/");// 找到登录按钮并点击driver.findElementById("J-btn-login").click();// 找到用户名输入框并输入driver.findElementById("J-userName").sendKeys("175********");// 找到密码输入框driver.findElementById("J-password").sendKeys("zhang******");// 找到登陆按钮并点击driver.findElementById("J-login").click();// 找到拖动按钮WebElement btnElement = driver.findElementById("nc_1_n1z");// 创建动作对象Actions actions = new Actions(driver);// 按住鼠标actions.clickAndHold(btnElement);// 拖到最右边actions.moveByOffset(400, 0);//放开鼠标actions.release();// 执行该动作actions.perform();}
}

下面图片中的两个框框是成功的关键,可以试着去将第一个框框中options中add和set两个注释啦,你会有意外的发现

第二个框中的拖到最右边的来两个参数是,第一个是x轴,以拖动按钮作为中心水平是x轴,竖直是y轴向右移动400像素(qq截图就可以查看这个拖动框的长宽),上下不需要动.接着直接运行你会发现他可以自己模拟鼠标拖动啦.

(java+selenium)Web自动化12306模拟人工滑块验证相关推荐

  1. 【爬虫剑谱】二卷4章 实战篇-模拟登录铁路12306网站(滑块验证)

    Python\网络爬虫\Selenium 一.源码 二.实战总结 问题一:不愿意代码模块化(常见于我这种菜狗+懒狗) 三.参考文献 一.源码 from selenium import webdrive ...

  2. Selenium Web 自动化 - Selenium常用API

    Selenium Web 自动化 - Selenium常用API 2016-08-01 目录 1 对浏览器操作   1.1 用webdriver打开一个浏览器   1.2 最大化浏览器&关闭浏 ...

  3. Selenium Web 自动化 - 项目实战(三)

    Selenium Web 自动化 - 项目实战(三) 2016-08-10 目录 1 关键字驱动概述 2 框架更改总览 3 框架更改详解   3.1 解析新增页面目录   3.2 解析新增测试用例目录 ...

  4. Selenium Web 自动化 - 如何找到元素

    Selenium Web 自动化 - 如何找到元素 2016-07-29 1. 什么是元素? 元素:http://www.w3school.com.cn/html/html_elements.asp ...

  5. Python+selenium Web自动化持续更新

    保姆入门级Web自动化学习资料 前言 Web自动化环境搭建 软件准备 开始环境搭建 浏览器和驱动下载 谷歌浏览器驱动版本对应以及下载: edge浏览器驱动版本对应以及下载: ie浏览器驱动官方地址: ...

  6. python selenium - web自动化环境搭建

    前提: 安装python环境. 参考另一篇博文:https://www.cnblogs.com/Simple-Small/p/9179061.html web自动化:实现代码驱动浏览器进行点点点的操作 ...

  7. python web自动化元素定位_快速掌握Python Selenium Web自动化:三)在Selenium中定位查找网页元素的诸类方法...

    使用Selenium进行自动化操作,首先要做的就是通过webdriver的get()方法打开一个URL链接. 在打开链接,完成页面加载之后,就可以通过Selenium提供的接口,在页面上进行各种操作了 ...

  8. selenium 反爬虫之跳过滑块验证

    某宝有自己对selenium的验证,在使用selenium自动化登录t宝时,往往会出现滑块验证失败问题. 原因 首先很多熟悉JS的人都知道t宝会检测window.navigator.webdriver ...

  9. python模拟滑动滑块验证

    滑动滑块的两个关键点为:(1)生成滑动轨迹(2)控制滑动按钮进行滑动 (1)根据要滑动的距离生成滑动轨迹,此处是模拟人为滑动:先加速滑动滑块,再减速滑动滑块.代码如下: 其中distance参数就是要 ...

  10. RobotFramework自动化测试框架-Selenium Web自动化(-)-Open Browser和Close Browser

    Selenium出来已经有很多年了,从最初的Selenium1到后来的Selenium2,也变得越来越成熟,而且也已经被很多公司广泛使用.Selenium发展的过程中,分了很多模块,这里我们主要介绍W ...

最新文章

  1. 往文件中写数据--增量
  2. 是学习Java还是Python?一张图告诉你!
  3. C# - winform使用Dictionary的时候,程序一闪而过!
  4. 优先队列详解priority_queue .RP
  5. vsftpd服务详解
  6. 新车可以无牌上路7天_无牌农用拖拉机车斗载人上路?交警说了,不可以!
  7. 增霸卡传输掉线/无法登录/再次登录时间长
  8. 计算机学生英语面试自我介绍ppt,大学生英语自我介绍ppt.doc
  9. QPainter详解
  10. Python 爬虫超详细讲解(零基础入门,老年人都看的懂)
  11. Java制作简易计算器
  12. C#开发微信订阅号、服务号视频教程-翟东平-专题视频课程
  13. 写了一个svg七巧板拼图的小东西
  14. Solidity 生成Java类
  15. android 读取excel 文件
  16. JAVA-打印星号三角形
  17. Python 函数 | zip 函数详解
  18. 什么是web前端开发工程师?主要做什么的?
  19. 【系统之家首发】Ghost_Windows7_sp1_Ultimate_x86V2011.10.10 【OEM 通用版】Windows7旗舰版好人一个出品
  20. appium报错:Original error: socket hang up

热门文章

  1. ArcPad 10 的安装部署
  2. 软件评测师教程书本对软考的作用有多大?
  3. 抓虫记之八:每天崩溃的服务器
  4. 电脑五笔,电脑键盘五笔指法练习表
  5. css完成图片预加载,图片预加载
  6. 小米游戏本bios更新_小米笔记本电脑bios升级方法图文步骤
  7. FFMPEG解封装后的AVPACKET存储为可播放的h264文件
  8. 小程序源码:全新独立后台月老办事处一元交友盲盒-多玩法安装简单
  9. pp助手可以刷机吗android,如何使用PP助手进行刷机?
  10. [教程] MPICH2 Win7 VS2008环境搭建