String URL="http://www.amap.com/";
WebDriver driver = new FirefoxDriver(profile);
driver.get(URL);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
WebElement chooseCityElement=driver.findElement(By.xpath("//div/span[@class='icon_expand cursor ml5']"));
chooseCityElement.click();
WebElement city_iframe=driver.findElement(By.xpath("//iframe[@id='city_iframe']"));
driver.switchTo().frame(city_iframe);
WebElement BJ=driver.findElement(By.xpath("//div/a[text()='北京']"));
BJ.click();
driver.switchTo().defaultContent();
WebElement inputBoxElement=driver.findElement(By.xpath("//input[@id='keywordTxt']"));
WebElement searchButton=driver.findElement(By.xpath("//input[starts-with(@class,'magnifier_button')]"));
inputBoxElement.clear();
inputBoxElement.sendKeys("天安门");
searchButton.submit();
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
WebElement tiAnMenElement=driver.findElement(By.xpath("//div[@title='天安门']"));
tiAnMenElement.click();
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS); WebElement comeToHereElement=driver.findElement(By.xpath("//div[@class='route']//li[text()='到这里去']"));
comeToHereElement.click(); WebElement setStartLocationElement =driver.findElement(By.xpath("//div/input[@class='route-input srh-ipt']"));
setStartLocationElement.sendKeys("火车站");
WebElement routeByBus=driver.findElement(By.xpath("//div[@id='rout-by-bus']"));
routeByBus.click();
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
WebElement startFrom=driver.findElement(By.xpath("//div[@class='start_end_item_title' and contains(text(),'北京站')]"));
Actions actions= new Actions(driver);
actions.moveToElement(startFrom).click(driver.findElement(By.xpath("//a[contains(text(),'设为起点') and @data-name='北京站']"))).perform();
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS); driver.findElement(By.xpath("//div[@class='amap-zoom-plus']")).click();

selenium WebDriver 操作高德地图的更多相关文章

  1. selenium 配合sikuli script操作高德地图

    会不会使用工具,是一般QA和高级QA的区别 ---To be crazy Java就是好,开源框架遍地都是,各种niubility的jar包,各种神器,真是不亦乐乎. 今天研究一下基于图片识别作为对象 ...

  2. Selenium Webdriver——操作隐藏的元素(二)display属性

    有时候我们会碰到一些元素不可见,这个时候selenium就无法对这些元素进行操作了.例如,下面的情况: 页面主要通过“display:none”来控制整个下拉框不可见.这个时候如果直接操作这个下拉框, ...

  3. Selenium Webdriver——操作隐藏的元素(三)switchTo().frame()

    在web 应用中经常会遇到frame 嵌套页面的应用,页WebDriver 每次只能在一个页面上识别元素,对于frame 嵌套内的页面上的元素,直接定位是定位是定位不到的.这个时候就需要通过switc ...

  4. Selenium Webdriver——操作隐藏的元素

    有时候我们会碰到一些元素不可见,这个时候selenium就无法对这些元素进行操作了.例如,下面的情况: 页面主要通过“display:none”来控制整个下拉框不可见.这个时候如果直接操作这个下拉框, ...

  5. selenium webdriver操作各浏览器

    描述 本文主要是针对Chrome 62 , firefox57 ,和IE11 三个版本的操作.相关的driver .可点击以下链接.所有的driver 建议放在浏览器的目录下,本文中所有的driver ...

  6. Selenium Webdriver——操作隐藏的元素display属性

    有时候我们会碰到一些元素不可见,这个时候selenium就无法对这些元素进行操作了.例如,下面的情况: 页面主要通过“display:none”来控制整个下拉框不可见.这个时候如果直接操作这个下拉框, ...

  7. Selenium webdriver 操作日历控件

    一般的日期控件都是input标签下弹出来的,如果使用webdriver 去设置日期, 1. 定位到该input 2. 使用sendKeys 方法 比如: 但是,有的日期控件是readonly的 比如1 ...

  8. Selenium webdriver 操作chrome 浏览器

    Step1: 下载chromedriver. 下载路径: http://chromedriver.storage.googleapis.com/index.html 选择一个合适的下载即可.我下载的是 ...

  9. Selenium webdriver 操作IE浏览器

    V1.0版本:直接新建WebDriver使用 import org.openqa.selenium.WebDriver; import org.openqa.selenium.ie.InternetE ...

随机推荐

  1. oracle中的sql%rowcount,sql%found、sql%notfound、sql%rowcount和sql%isopen

     Oracle 存储过程 删除表记录时删除不存在的记录也是显示删除成功 create or replace procedure delDept(p_deptno in dept.deptno%type ...

  2. xStream完美转换XML、JSON

    xStream框架 xStream可以轻易的将Java对象和xml文档相互转换,而且可以修改某个特定的属性和节点名称,而且也支持json的转换: 前面有介绍过json-lib这个框架,在线博文:htt ...

  3. 【8-16】Android学习笔记01

    Android目录树 Activity 生命周期 创建一个 Activity 在 android 中创建一个 Activity 要编写一个继承自 android.app.Activity的 Java ...

  4. CF449B Jzzhu and Cities (最短路)

    CF449B CF450D http://codeforces.com/contest/450/problem/D http://codeforces.com/contest/449/problem/ ...

  5. Linux运维初级教程(二)账户与安全

    知识点 用户ID为UID,组ID为GID,UID=0表示超级管理员即root. 一个用户只可以加入一个基本组,但是可以同时加入多个附加组. 创建用户时,系统默认会自动创建同名的组,并设置用户加入该基本 ...

  6. 处理dataTable的行和列数据

    DataTable dt = null; foreach (DataRow dr in dt.Rows) { ; j < dr.ItemArray.Length; j++) { tempColu ...

  7. tyvj1614 魔塔魔塔!

    描述 百度noip贴吧管理组开发了一个小游戏,叫魔塔魔塔.虽然把魔塔重复了两次,但其实还只是个魔塔而已,还是简化版的.游戏在一个N*M大小的地图中进行,每一格都是正方形.对于某一格,有若干种可能的状态 ...

  8. jquery datagrid加载后仅选定第一行

    function onLoadSuccess(data) { var rows = $("#DataGrid").datagrid("getRows"); if ...

  9. WP7/WP8/WP8.1设置存储的区别

    最近做的一个软件,由于最初是针对WP7的,现在在只能创建WP8.1的visual studio 2013上转换为了WP8的. 由于要保存字体大小.背景颜色.JSON三个数据,一直使用的是WP7下的存储 ...

  10. POJ 2155 Matrix

    二维树状数组....                          Matrix Time Limit: 3000MS   Memory Limit: 65536K Total Submissio ...