005 selenium xpath/调试/table

Posted huafan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了005 selenium xpath/调试/table相关的知识,希望对你有一定的参考价值。

技术分享图片

 

 

‘‘‘
时间:2018/12/04
功能:xpath/调试/table
目录:
    一: xpath
        1 绝对路径
        2 元素属性
        3 标签 + 元素
        4 路径 + 元素
        5 逻辑 + 元素
        6 文本
        7 子节点 - 索引    
    二: 调试
        1 firefox
        2 chrmoe
    三: table
        1 输出内容
    四: 错误
        1 定位语法
五: 思考
‘‘‘

 

一: xpath
  1 绝对路径

技术分享图片

 

技术分享图片

 

  2 元素属性

id 
name 
class 
其他

 

技术分享图片

 1 : id定位。

 

技术分享图片

 1 : name定位。

 

技术分享图片

1 : class定位。

 

技术分享图片

1 : 其他元素定位。


  3 标签 + 元素

技术分享图片

 

  4 路径 + 元素

技术分享图片

1 : 定位id。


  5 逻辑 + 元素

技术分享图片

 

  6 文本

技术分享图片

 

  7 子节点 - 索引

技术分享图片

 

二: 调试
  1 firefox

技术分享图片

 

  2 chrmoe

技术分享图片

1 : 第1个条件定位,是一处符合条件。

2 : 第2个条件定位,是两处符合条件。

 

三: table
  1 输出内容

<!DOCTYPE html>
<meta charset="UTF-8"> <!-- for HTML5 -->
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<html>  
        <head>  
            <title>Table测试</title>  
              
        </head>  
        <body>  
            <table border="1" id="myTable">  
                <tr>  
                    <th>国家</th>  
                    <th>城市</th>  
                    <th>地区</th>  
                </tr>  
                <tr>  
                    <td>中国</td>  
                    <td>北京</td>  
                    <td>海淀</td>  
                </tr>  
                <tr>  
                    <td>日本</td>  
                    <td>东京</td>  
                    <td>富士山</td>  
                </tr>  
            </table>  
        </body>  
</html> 

 1 : 保存到桌面,命名为 table.html。

 

技术分享图片

 1 : 查看页面显示。

 

from selenium import webdriver
import time

driver = webdriver.Firefox()
driver.get("file:///C:/Users/Administrator/Desktop/table.html")

# 获取句柄 - 当前窗口
time.sleep(1)
element = driver.find_element_by_xpath(".//*[@id=‘myTable‘]/tbody/tr[2]/td[1]")
print(element.text)

element = driver.find_element_by_xpath(".//*[@id=‘myTable‘]/tbody/tr[2]/td[3]")
print(element.text)
中国
海淀

 

四: 错误

  1 定位语法

正确: $x(".//*[text() = "新闻"]") 
错误: $x(".//*[text() = ‘新闻‘]")

 

FirePath插件缺点: 使用XPath定位,只定位id,id动态定位失效。

 

五: 思考

xpath三个因素: 路径、元素、逻辑

 
















以上是关于005 selenium xpath/调试/table的主要内容,如果未能解决你的问题,请参考以下文章

selenium.键盘事件(Keys)

selenium 定位

根据下面提到的Selenium代码,xpath的“text()”属性不适用于textnode

Selenium | 网上教程

selenium + Python -- xpath定位

selenium +xpath