1.对出发地方和到达地方进行Xpath定位,这里采用了Xpath的text() 函数进行定位

用following::sibling选择当前元素后的兄弟元素,比如出发框的Xpath表达式如下:

.//*[text()= '出发']/following-sibling::input"

也可以用下面Xpath

//div[@id='js_flighttype_tab_domestic']//input[@name='fromCity']

 1 /**
 2 * @author Hjianhui
 3 * 12306  2016-08-05
 4 *
 5 */
 6 public class test{
 7
 8     public static void main(String[] args) {
 9
10         WebDriver driver = new FirefoxDriver();
11
12         try{
13             driver.get("http://www.qunar.com/");
14             driver.manage().window().maximize();
15             //输入出发地方
16             driver.findElement(By.xpath(".//*[text()= '出发']/following-sibling::input")).clear();
17             driver.findElement(By.xpath(".//*[text()= '出发']/following-sibling::input")).sendKeys("北京");
18
19             输入到达地方
20             driver.findElement(By.xpath(".//*[text()= '到达']/following-sibling::input")).clear();
21             driver.findElement(By.xpath(".//*[text()= '到达']/following-sibling::input")).sendKeys("广州");
22
23             if(isElementPresent(driver, By.xpath(".//*[@id='closeXI20']")))
24                 driver.findElement(By.xpath(".//*[@id='closeXI20']")).click();
25
26             driver.findElement(By.id("js_domestic_fromdate")).clear();
27             driver.findElement(By.id("js_domestic_fromdate")).sendKeys("2016-08-20");
28
29             //点击立即搜索
30             driver.findElement(By.xpath(".//span[@class = 'p_btn']/button")).click();
31
32         }catch (Exception e){
33             e.printStackTrace();
34         }
35         driver.quit();
36     }
37
38     public static boolean isElementPresent(WebDriver driver, By by) {
39             try {
40               driver.manage().timeouts().implicitlyWait(1, TimeUnit.SECONDS);
41               driver.findElement(by);
42               return true;
43             } catch (NoSuchElementException e) {
44               return false;
45             }
46           }
47 }

由于在输入到达地方的时候,可能会有下图挡住了立即搜索,导致立即搜索不可见,因此用isElementPresent()函数判断该图下的右上角图标是否出现,如果出现,点击取消他,然后再点击立即搜索

转载于:https://www.cnblogs.com/hjhsysu/p/5737361.html

Selenium Webdriver——去哪儿网输入实例相关推荐

  1. Python Selenium.WebDriver清除输入框再输入『详解』

    Python Selenium.WebDriver 清除输入框再输入『详解』 文章目录 Python Selenium.WebDriver 清除输入框再输入『详解』 一.如何清除输入框中的默认内容 二 ...

  2. python selenium爬取去哪儿网的酒店信息——详细步骤及代码实现

    目录 准备工作 一.webdriver部分 二.定位到新页面 三.提取酒店信息 ??这里要注意?? 四.输出结果 五.全部代码 准备工作 1.pip install selenium 2.配置浏览器驱 ...

  3. python爬取酒店信息_python selenium爬取去哪儿网的酒店信息(详细步骤及代码实现)...

    准备工作 1.pip install selenium 2.配置浏览器驱动.配置其环境变量 Selenium3.x调用浏览器必须有一个webdriver驱动文件 Chrome驱动文件下载chromed ...

  4. selenium模拟登陆去哪儿网

    序言 在模拟网页的表单登陆的时候,比较头疼的一个问题就是图片验证码的情况,碰到了验证码,比如像普通的文字图片类型的验证码,目前一个比较好的思路就是,通过selenium自身提供的截图功能,对指定的图片 ...

  5. Vue 实例实战之 Vue webpack 仿去哪儿网App页面开发(应用中的几个页面简单实现)

    Vue 实例实战之 Vue webpack 仿去哪儿网App页面开发(应用中的几个页面简单实现) 目录 Vue 实例实战之 Vue webpack 仿去哪儿网App页面开发(应用中的几个页面简单实现) ...

  6. Selenium Webdriver重新使用已打开的浏览器实例

    本文转自:http://blog.csdn.net/wwwqjpcom/article/details/51232302 本文中的样例均使用SoapUI ,关于SoapUI+Webdriver 的配置 ...

  7. python selenium 爬取去哪儿网的数据

    python selenium 爬取去哪儿网的数据 完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/selenium+qu ...

  8. Python+Selenium.webdriver实现WEB端UI自动化测试(实例脚本)

    本篇记录基于Python+Selenium.webdriver实现WEB端UI自动化测试,其中测试用例使用excel维护.为了在实际项目种的扩展应用,建议学习webdriver的元素定位方法,欢迎在评 ...

  9. 通过简书网学习 ActionChains,selenium webdriver 学习第3篇

    本篇博客学习 selenium webdriver 控制窗口句柄,以及模拟鼠标键盘操作等内容. 控制 BOSS 直聘网站窗口句柄 本次先通过 BOSS 直聘网进行测试,打开网站首页的头图. 切换句柄, ...

最新文章

  1. JAVA虚拟机 安全区域_Java虚拟机的内存区域
  2. Java对象序列化的本机C / C ++类似性能
  3. linux中的文件,文件夹,链接的权限划分
  4. mysql5.6允许远程服务器访问数据库
  5. C# ActiveX开发部署更新
  6. [swift] LeetCode 21. Merge Two Sorted Lists
  7. ASP.NET 2.0的编译行为
  8. jira-enterprise-3.6.4-standalone + confluence-2.2.8 + MySQL5.0 安装破解全过程
  9. 虚拟机中centos7找不到vim命令的解决方法
  10. 《the django book》part2 django的安装使用
  11. 深入理解HashMap
  12. visio画两条直线交叉但不弯曲不跨线
  13. pdf文件展示盖章及下载
  14. 为什么有的chm会显示“已取消到该网页的导航”?
  15. 使用java实现输出图形(三角形、菱形等四个图形)
  16. Zend Studio 9.0.3正式版注册破解
  17. 前端开发的workers——web workers、share workers和service workers
  18. Java版KTV预定管理系统源码
  19. 计算机系统结构 之 指令系统
  20. 微信开发之使用java获取签名signature

热门文章

  1. 网络通信之传输层协议
  2. 河南省 建筑标准规范 合集
  3. idea 启动项目找不到程序包,提示程序包不存在
  4. 数据结构——循环链表之约翰夫生死游戏
  5. 【Python】pandas的describe参数详解
  6. java后台实现支付宝支付接口、支付宝订单查询接口 前端为APP
  7. c语言对孩子的作用,爸爸用C语言给孩子早教,孩子逐渐崩溃,网友:你别害孩子秃顶...
  8. js函数arguments的使用
  9. Verilog专题(十九)新世界的大门——状态机
  10. 码住丨这五款app打开了新世界的大门