selenium 数据驱动 (xml解析)

getElementByTagName()可以通过标签名获取某个标签。它所获取的对象是以数组形式存放。如“caption”和“item”标签在info.xml 文件中有多个,那么可以指定数组的下标在获取某个标签。
root.getElementsByTagName('caption') 获得的是标签为caption 一组标签;getElementsByTagName("p")[3]
item(0).getNodeName() 表示一组标签中的第一个。
item(2).getNodeName() 表示一组标签中的第三个。

getAttributes()方法可以获得元素的属性,getNamedItem()指定属性的名字。

getTextContent()方法用于获取标签对之前的数据。

HTML代码

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
<maxid>4</maxid>
<login username="pytest" passwd="123456">
<caption>Java</caption>
<item id="4">
<caption>test</caption>
</item>
</login>
<item id="2">
<caption>Zope</caption>
</item>
</catalog>

java代码一

 1 package selenium.test;
2 import java.io.File;
3 import javax.xml.parsers.DocumentBuilder;
4 import javax.xml.parsers.DocumentBuilderFactory;
5 import org.w3c.dom.Document;
6 import org.w3c.dom.NodeList;
7
8 public class readXML {
9 public static void main(String[] args) {
10 try {
11 File xmlFile = new File("C:\\Users\\happy\\Desktop\\Domo.xml");
12 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
13 DocumentBuilder builder = factory.newDocumentBuilder();
14 Document doc = builder.parse(xmlFile);
15 NodeList ma = doc.getElementsByTagName("maxid");
16 NodeList ca = doc.getElementsByTagName("caption");
17 NodeList it = doc.getElementsByTagName("item");
18 System.out.println(ma.item(0).getNodeName());
19 System.out.println(ca.item(0).getNodeName());
20 System.out.println(it.item(0).getNodeName());
21 } catch (Exception e) {
22 e.printStackTrace();
23 }
24 }
25 }

java代码二

  1 package selenium.test;
2
3 import java.io.File;
4 import javax.xml.parsers.DocumentBuilder;
5 import javax.xml.parsers.DocumentBuilderFactory;
6
7 import org.python.constantine.platform.darwin.Sysconf;
8 import org.w3c.dom.Document;
9 import org.w3c.dom.NodeList;
10
11 public class readXML {
12 public static void main(String[] args) {
13 try {
14 File xmlFile = new File("C:\\Users\\happy\\Desktop\\Domo.xml");
15 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
16 DocumentBuilder builder = factory.newDocumentBuilder();
17 Document doc = builder.parse(xmlFile);
18 // 获取指定标签中元素/属性的值
19 NodeList login = doc.getElementsByTagName("login");
20 System.out.println(login.item(0).getAttributes().getNamedItem("username"));
21 System.out.println(login.item(0).getAttributes().getNamedItem("passwd"));
22 NodeList ca = doc.getElementsByTagName("caption");
23 // 获取标签中的文本内容
24 for (int i = 0; i < ca.getLength(); i++) {
25 System.out.println(ca.item(i).getTextContent());
26 //循环获取caption标签中的文本内容
27 }
28
29 } catch (Exception e) {
30 e.printStackTrace();
31 }
32 }
33
34 }

selenium java 读取xml (数据驱动)的更多相关文章

  1. Java读取xml数据

    xml中的代码 <?xml version="1.0" encoding="UTF-8"?> <books id="aaa" ...

  2. java 读取XML文件作为配置文件

    首先,贴上自己的实例: XML文件:NewFile.xml(该文件与src目录同级) <?xml version="1.0" encoding="UTF-8&quo ...

  3. java读取xml文件报“org.xml.sax.SAXParseException: Premature end of file” .

    背景:java读取xml文件,xml文件内容只有“<?xml version="1.0" encoding="UTF-8"?>”一行 java读取该 ...

  4. java读取XML文件的四种方式

    java读取XML文件的四种方式 Xml代码 <?xml version="1.0" encoding="GB2312"?> <RESULT& ...

  5. JAVA读取XML文件并解析获取元素、属性值、子元素信息

    JAVA读取XML文件并解析获取元素.属性值.子元素信息 关键字 XML读取  InputStream   DocumentBuilderFactory   Element     Node 前言 最 ...

  6. java读取 xml文件

    java读取xml文件的四种方法  转自https://www.cnblogs.com/lingyao/p/5708929.html Xml代码 1 <?xml version="1. ...

  7. selenium java读取csv文件 (数据驱动)

    javacsv2.1 下载地址:http://sourceforge.net/projects/javacsv/files/ 该链接可以下载java读取csv文件的jar 包.下载之后解压找到对应的. ...

  8. JAVA读取XML文件数据

    XML文档内容如下: <?xml version="1.0" encoding="UTF-8"?> <root> <field t ...

  9. Java读取xml

    首先将xml的格式展示出来,如下 <?xml version="1.0"?> <configuration> <connectionStrings n ...

随机推荐

  1. [译]在SQL查询中如何映射(替换)查询的结果?

    问题来源: https://stackoverflow.com/questions/38567366/mapping-values-in-sql-select 有一个表格,就称它Plant,它有三列: ...

  2. winform自动最大化(在不同分辨率情况下)

    load函数末尾加: System.Drawing.Rectangle rec = Screen.GetWorkingArea(this); int SH = rec.Height; int SW = ...

  3. webmagic 二次开发爬虫 爬取网站图片

    webmagic的是一个无须配置.便于二次开发的爬虫框架,它提供简单灵活的API,只需少量代码即可实现一个爬虫. webmagic介绍 编写一个简单的爬虫 webmagic的使用文档:http://w ...

  4. 编程练习:寻找发帖"水王"扩展问题二

    回顾 在前面两篇文章已经实现了水王id出现次数超过一半,以及水王id出现次数刚好一半 分析 借助上面水王id出现次数刚好出现一半的分析,其实这里就是找出数组中出现次数前三的元素,具体的分析,见前面两篇 ...

  5. windows下 eclipse搭建spark java编译环境

    环境: win10 jdk1.8 之前有在虚拟机或者集群上安装spark安装包的,解压到你想要放spark的本地目录下,比如我的目录就是D:\Hadoop\spark-1.6.0-bin-hadoop ...

  6. iOS-UIImageView播放动画

    NSArray *gifArray = [NSArray arrayWithObjects:[UIImage imageNamed:@"lanya1"],[UIImage imag ...

  7. 微信小程序小程序使用scroll-view不能使用下拉刷新的解决办法

    <scroll-view class="movie-grid-container" scroll-y="true" scroll-x="fals ...

  8. javaScript的流程控制语句学习笔记

    JavaScript提供了5种流程控制语句,if条件判断语句,switch语句,for循环语句,while循环语句,do-while循环语句. 1.条件判读语句 对变量或表达式进行判定,并根据判定结果 ...

  9. [剑指Offer] 23.二叉搜索树的后序遍历

    [思路]BST的后序序列的合法序列是,对于一个序列S,最后一个元素是x (也就是根),如果去掉最后一个元素的序列为T,那么T满足:T可以分成两段,前一段(左子树)小于x,后一段(右子树)大于x,且这两 ...

  10. [BinaryTree] 二叉搜索树(二叉查找树、二叉排序树)

    二叉查找树(BinarySearch Tree,也叫二叉搜索树,或称二叉排序树BinarySort Tree)或者是一棵空树,或者是具有下列性质的二叉树: (1)若它的左子树不为空,则左子树上所有结点 ...