package com.test;
import java.util.List; <wbr></wbr>
import org.openqa.selenium.By; <wbr><wbr></wbr></wbr>
import org.openqa.selenium.WebDriver; <wbr></wbr>
import org.openqa.selenium.WebElement; <wbr></wbr>
import org.openqa.selenium.chrome.ChromeDriver;
public class Test_table {
private WebDriver driver; <wbr></wbr>
Test_table(WebDriver driver){ <wbr></wbr>
<wbr><wbr><wbr><wbr>this.driver = driver; <wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr>} <wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr></wbr></wbr></wbr>
<wbr><wbr>public String getCellText(By by,String tableCellAddress) { <wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>//得到table元素对象 <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>WebElement table = driver.findElement(by); <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>//对所要查找的单元格位置字符串进行分解,得到其对应行、列。 <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>int index = tableCellAddress.trim().indexOf('.'); <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>int row = <wbr>Integer.parseInt(tableCellAddress.substring(0, index)); <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>int cell = Integer.parseInt(tableCellAddress.substring(index+1)); <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>//得到table表中所有行对象,并得到所要查询的行对象。 <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>List<WebElement> rows = table.findElements(By.tagName("tr")); <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>WebElement theRow = rows.get(row); <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>//调用getCell方法得到对应的列对象,然后得到要查询的文本。 <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>String text = getCell(theRow, cell).getText(); <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>return text; <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr>} <wbr></wbr></wbr></wbr>
<wbr><wbr><wbr></wbr></wbr></wbr>
<wbr><wbr>private WebElement getCell(WebElement Row,int cell){ <wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>List<WebElement> cells; <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>WebElement target = null; <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>//列里面有"<th>"、"<td>"两种标签,所以分开处理。 <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>if(Row.findElements(By.tagName("th")).size()>0){ <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>cells = Row.findElements(By.tagName("th")); <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>target = cells.get(cell); <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>} <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>if(Row.findElements(By.tagName("td")).size()>0){ <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>cells = Row.findElements(By.tagName("td")); <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>target = cells.get(cell); <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr>} <wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>return target; <wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr>} <wbr></wbr></wbr></wbr>
public static void main(String[] args) {
String url = "file:///C:/Documents and Settings/fy/桌面/table.html";
<wbr><wbr>//打开chrome</wbr></wbr>
<wbr><wbr>WebDriver dr = new ChromeDriver();</wbr></wbr>
<wbr><wbr><wbr><wbr>dr.get(url);</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>Test_table table = new Test_table(dr); <wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>System.out.println(table.getCellText(By.id("myTable"), "0.2"));<wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>System.out.println(table.getCellText(By.id("myTable"), "2.1"));<wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>dr.quit();</wbr></wbr></wbr></wbr>
}
}
相关推荐
selenium-webdriver处理table模块的ruby版本。
webdriver API中文版 webdriver API中文版 2 1.1 下载selenium2.0的lib包 2 1.2 用webdriver打开一个浏览器 2 1.3 打开测试页面 3 1.4 GettingStarted 3 第2章 Webdirver对浏览器的支持 5 2.1 HtmlUnit Driver...
webtable类-对于页面中列表含有table的,获取元素对象的方法类
Table of Contents Introducing WebDriver and WebElements Exploring Advanced Interactions of WebDriver Exploring the Features of WebDriver Different Available WebDrivers Understanding WebDriver ...
webdriver安装包
本书是一本从入门到精通模式的Selenium WebDriver实战经验分享书籍。全书共分为四个部分:第1部分基础篇主要讲解自动化测试相关的基础理论、WebDriver 环境安装、单元测试工具的使用方法以及 WebDrvier的入门使用...
IE Webdriver Python
WebDriver实验版VB6版WebDriver实验,压缩包中有技术文档《WebDriver原理及实验》
好了,直入主题,由于开源社区不再维护selenium 1.x再加之更为先进的selenium 2.0确实有不少优势之初可以完全取代1.x,在这里笔者会花一些笔墨,若干篇幅,争取深入浅出的讲解selenium 2.0的一些基本知识,常用方法...
webdriver-helper安装包,whl版本
php-webdriver-bindings这个PHP库允许创建功能测试与PHP webdriver
Selenium WebDriver详解及事例
WebDriver命令参考手册
webdriver 数据驱动 webdriver 数据驱动webdriver 数据驱动webdriver 数据驱动webdriver 数据驱动webdriver 数据驱动
调用webdriver打开网页
ruby2.0.0+selenium-webdriver+watir-webdriver+rails离线备份,设置环境变量后可使用(未测试)
Table of Contents Introducing WebDriver and WebElements Working with Browser Drivers Using Java 8 features along with Selenium Exploring the Features of WebDriver Exploring Advanced Interactions of ...
webdriver 兼容新测试 源码
讲述了WebDriver-xpath和WebDriver-Css的学习摘要笔记,对于初学者还是很有用的,我也是转载的
VB6版WebDriver实验,压缩包中有技术文档《WebDriver原理及实验》《WebDriver命令编程手册(英文版、中文机翻版)》,代码演示的功能有:操作浏览器自动打开百度、搜索mp3,获得网页源码,获得网页标题,网页截图,...