java调用浏览器_java,利用Selenium调用浏览器,动态模拟浏览器事件,动态获取页面信息...

1、环境搭建

jdk1.6版本:selenium 2.4版本。

jdk1.8版本:selenium3.14版本。

(1)selenium的jar包下载:

地址:http://selenium-release.storage.googleapis.com/index.html

需要用:selenium-server-standalone-3.9.1.jar(需要在cmd下安装,java -jar ***),selenium-java-2.40.0.jar,selenium-java-2.40.0-srcs.jar还有它的libs。

(2)webDriver下载:

注意:webDriver必须与浏览器版本相对应,否则会出现问题

2、程序代码示例

//固定时间等待:driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);//设定最大等待时间,一旦标签存在即可返回:wait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector(".abc")))

WebDriver driver = new ChromeDriver(); //新建一个WebDriver 的对象,但是new 的是谷歌的驱动

driver.get(url); //打开指定的网站

try{

Thread.sleep(60000);//60秒

driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);

}catch(Exception e) {

e.printStackTrace();

}//定位层级元素

WebElement e = driver.findElement(By.cssSelector(".animation-toggle"));

e.click();//等待加载完页面

try{

Thread.sleep(60000);//60秒

driver.manage().timeouts().implicitlyWait(60,TimeUnit.SECONDS);//等待界面加载完

}catch(Exception e2)

{

e2.printStackTrace();

}

SimpleDateFormat sdf= new SimpleDateFormat("yyyyMMdd");

Date d=newDate();

List list = driver.findElements(By.cssSelector("img.frame"));//img标签,class为frame

int i=-1;for(WebElement el : list)

{

String img_url=el.getAttribute("src");//System.out.println(img_url);

String time = sdf.format(d.getTime()+i*24*60*60*1000);

loadPage(img_url,type,time);

i=i+1;

}

driver.quit();//退出浏览器

3、元素定位

(1)根据tagName

driver.findElement(By.cssSelector("

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值