selenium 右键下载图片,结合sikuli
上一次写右键下载是结合robot,这次是使用selenium+sikuli
上一次日志:http://www.cnblogs.com/tobecrazy/p/3969390.html
有关sikuli的介绍,和简单使用请参考:http://www.cnblogs.com/tobecrazy/p/4516369.html
关于sikuli的缺点:
1.运行脚本时候,必须截图,图片比较占用系统空间
2.脚本执行过程中,不能移动鼠标,而selenium可以最小化,任意移动鼠标
话不多说,介绍一下场景:
1.打开百度
2.右键单击百度logo
3.点击弹出菜单的save as
4. 输入保存位置和文件名
5. 点击保存菜单
首先要做的是,截图,截图保存位置c:/selenium

脚本如下:
//create chrome webDriver with parameter
ChromeOptions options = new ChromeOptions();
options.addArguments("--test-type"); Screen screen=new Screen();
System.setProperty("webdriver.chrome.driver", "C:\\webdriver\\chromedriver.exe");
WebDriver driver = new ChromeDriver(options); String login_url="https://www.baidu.com/";
driver.get(login_url);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(90, TimeUnit.SECONDS);
driver.manage().timeouts().pageLoadTimeout(90, TimeUnit.SECONDS); //find baidu logo
WebElement baiduLogo=driver.findElement(By.xpath("//div[@id='lg']/img"));
Actions actions = new Actions(driver);
//right click
actions.contextClick(baiduLogo).perform();
Pattern saveAs =new Pattern("c:\\selenium\\saveAs.png");
screen.click(saveAs);
Pattern inputBox1 =new Pattern("c:\\selenium\\inputBox1.png");
screen.find(inputBox1);
screen.type("c:\\selenium\\baiduLogo.png");
Pattern saveButton =new Pattern("c:\\selenium\\saveButton.png");
screen.click(saveButton);
//wait for 60s to verify download success or not
try
{
Thread.sleep(60000); } catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
File f=new File("c:\\selenium\\baiduLogo.png");
if(f.exists())
{
System.out.println("PASS");
}
driver.close();
}
selenium 右键下载图片,结合sikuli的更多相关文章
- selenium - 截图下载图片
from selenium import webdriver from selenium.webdriver import ChromeOptions from time import sleep f ...
- selenium爬取优酷页面并下载图片
from selenium import webdriver import requests driver = webdriver.Chrome() #打开优酷 driver.get("ht ...
- 用python批量下载图片
一 写爬虫注意事项 网络上有不少有用的资源, 如果需要合理的用爬虫去爬取资源是合法的,但是注意不要越界,前一阶段有个公司因为一个程序员写了个爬虫,导致公司200多个人被抓,所以先进入正题之前了解下什么 ...
- selenium 3 下载 + Java使用
一.下载Selenium 3 的相关包和工具 Selenium 3 下载的官网地址为http://www.seleniumhq.org/download/.当然,需要翻墙才能登陆selenium的官网 ...
- Selenium获取动态图片验证码
Selenium获取动态图片验证码 关于图片验证码的文章,我想大家都有一定的了解了. 在我们做UI自动化的时候,经常会遇到图片验证码的问题. 当开发不给咱们提供万能验证码,或者测试第三方网站比如知乎的 ...
- 《手把手教你》系列技巧篇(五十六)-java+ selenium自动化测试-下载文件-上篇(详细教程)
1.简介 前边几篇文章讲解完如何上传文件,既然有上传,那么就可能会有下载文件.因此宏哥就接着讲解和分享一下:自动化测试下载文件.可能有的小伙伴或者童鞋们会觉得这不是很简单吗,还用你介绍和讲解啊,不说就 ...
- 《手把手教你》系列技巧篇(五十七)-java+ selenium自动化测试-下载文件-下篇(详细教程)
1.简介 前边几篇文章讲解完如何上传文件,既然有上传,那么就可能会有下载文件.因此宏哥就接着讲解和分享一下:自动化测试下载文件.可能有的小伙伴或者童鞋们会觉得这不是很简单吗,还用你介绍和讲解啊,不说就 ...
- C++根据图片url下载图片
需要使用到URLDownloadToFile()函数,该函数在头文件<urlmon.h>中声明. URLDownloadToFile()函数的定义如下: HRESULT URLDownlo ...
- .net 已知图片的网络路径,通过浏览器下载图片
没什么技术含量,主要留给自己查找方便: 如题,知道图片的完整网络路径的情况下,在浏览器中下载图片的实现: 下面这个方法实现的是把图片读取为byte数组: private byte[] GetImage ...
随机推荐
- java从一个目录拷贝文件到另一个目录下
** * 复制单个文件 * @param oldPath String 原文件路径 如:c:/fqf.txt * @param newPath String 复制后路径 如:f:/fqf.txt * ...
- Android Studio-设置代码自动提示
None:代表模糊匹配(推荐). First Letter: 根据首字母进行匹配. All:与First Letter类似,不过匹配结果比First Letter多.
- javascript DOM操作之 querySelector,querySelectorAll
javascript DOM操作之 querySelector,querySelectorAll
- Linux下C语言高手成长路线(转载)
建议学习路径: 首先先学学编辑器,vim, emacs什么的都行. 然后学make file文件,只要知道一点就行,这样就可以准备编程序了. 然后看看<C程序设计语言>K&R,这样 ...
- 给一系列的div中的第一个添加class
$(".lb:first").addClass("active")
- jQuery Colorbox插件
http://www.open-open.com/lib/view/open1338084606042.html jQuery Colorbox是一款非常好的内容播放插件.它集弹出层.幻灯片播放功能于 ...
- javascript中对象学习
第一篇文章: javascript中this关键字的详细解析: http://blog.csdn.net/wyj880220/article/details/7305952 Javascript ...
- An error in projects
Error能使系统产生Failure从而导致系统不能达到所需的功能. 曾经,做一个关于酒店管理系统的项目.因为数据库表主外键的连接错误,当对页面的添加桌位功能进行测试时,不能正确的添加. 后通过逐行对 ...
- Longest Common Substring
Given two strings, find the longest common substring. Return the length of it. Example Given A = &qu ...
- [转载]Jquery mobile 新手问题总汇
原文链接:http://www.wglong.com/main/artical!details?id=4 此文章将会持续更新,主要收录一些新手比较常见的问题. 欢迎 向我推荐比较典型的常见问题,我会记 ...