1、coverage包实现代码覆盖率
(1)pip install coverage
(2)coverage run XX.py(测试脚本文件)
(3)coverage report -m 在控制台打印出覆盖率信息报告
(4)coverage html 在同一目录下生成一个htmlcov文件夹,打开文件夹中的index.html即可图形化界面方式查看代码覆盖率
 
2、xpath 理解
(1)XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。
 
3、xpath基本语法
(1)斜线/从根节点开始选择,表示绝对路径
 
(2)双斜杠//相对路径,只要满足条件的都显示
 
 
练习:

选择所有父元素是DDD的BBB元素  语法://DDD/BBB

   <AAA>  
     <
BBB/>  
     <
CCC/>  
     <
BBB/>  
     <
DDD>  
          <
BBB/>  
     </
DDD>  
     <
CCC>  
          <
DDD>  
               <
BBB/>  
               <
BBB/>  
          </
DDD>  
     </
CCC>  
    </
AAA>

 

选择AAA的CCC的所有BBB元素  语法:/AAA/CCC//BBB

   <AAA>  
     <
BBB/>  
     <
CCC/>  
     <
BBB/>  
     <
DDD>  
          <
BBB/>  
     </
DDD>  
     <
CCC>  
          <
DDD>  
               <
BBB/>  
               <
BBB/>  
          </
DDD>  
     </
CCC>  
   </
AAA>

(3)点”.”选取当前节点

(2)点点”..”选取当前节点的父节点

(4)[@]属性
选择所有category属性
 
选取有category属性的book元素
 
选取有category="cooking"属性的book元素
 
选取所有属性category=“web”或category=“paperback”的元素
 
选取有任意属性的book元素
 
选择不具备某种属性的元素
 
相对属性查找
 
(5)找到第一个元素

选择AAA下的第一个BBB元素  语法:/AAA/BBB[1]

   <AAA> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
   </
AAA>

 
(6)选择AAA下的最后一个BBB元素  语法:/AAA/BBB[last()]

    <AAA> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
   </
AAA>

(7)选择AAA下的倒数第二个BBB元素  语法:/AAA/BBB[last()-1]

   <AAA> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
   </
AAA>

(8)选择AAA下的前面两个BBB元素  语法:/AAA/BBB[position()<3]

   <AAA> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
     <
BBB/> 
   </
AAA>

(9)获取AAA下的BBB下的有s属性的CCC元素   语法:/AAA/BBB/CCC[@s]

   <AAA> 
     <
BBB> 
          <
CCC s = "1"/> 
          <
CCC s = "2"/> 
          <
CCC s = "3"/> 
          <
CCC s = "4"/> 
          <
CCC s = "5"/> 
          <
CCC r = "a"/> 
     </
BBB> 
     <
CCC> 
          <
BBB r = "a"/> 
          <
BBB r = "b"/> 
          <
BBB r = "c"/> 
     </
CCC> 
     <
BBB/> 
     <
BBB/> 
  </
AAA>

 

【Python】xpath-1的更多相关文章

  1. 【Python】xpath中为什么粘贴进去代码后老报错?如何在定位元素的时候准确找到定位切入点?

    1. xpath后()中双引号("")里面不能套用双引号(""),把里面的双引号改成单引号('')报错就没有了. 2.如何在定位元素的时候准确找到定位切入点? ...

  2. 【python】列出http://www.cnblogs.com/xiandedanteng中所有博文的标题

    代码: # 列出http://www.cnblogs.com/xiandedanteng中所有博文的标题 from bs4 import BeautifulSoup import requests u ...

  3. 【python】自动更新pu口袋校园活动

    [python]自动更新pu口袋校园活动 脚本目标: 1. 自动爬取pu口袋校园活动,筛选出需要的活动,此处我的筛选条件是线上活动,因为可以不用去就可以白嫖学时 2. 自动发送邮件到QQ邮箱,每次只发 ...

  4. 【Python②】python之首秀

       第一个python程序 再次说明:后面所有代码均为Python 3.3.2版本(运行环境:Windows7)编写. 安装配置好python后,我们先来写第一个python程序.打开IDLE (P ...

  5. 【python】多进程锁multiprocess.Lock

    [python]多进程锁multiprocess.Lock 2013-09-13 13:48 11613人阅读 评论(2) 收藏 举报  分类: Python(38)  同步的方法基本与多线程相同. ...

  6. 【python】SQLAlchemy

    来源:廖雪峰 对比:[python]在python中调用mysql 注意连接数据库方式和数据操作方式! 今天发现了个处理数据库的好东西:SQLAlchemy 一般python处理mysql之类的数据库 ...

  7. 【python】getopt使用

    来源:http://blog.chinaunix.net/uid-21566578-id-438233.html 注意对比:[python]argparse模块 作者:limodou版权所有limod ...

  8. 【Python】如何安装easy_install?

    [Python]如何安装easy_install? http://jingyan.baidu.com/article/b907e627e78fe146e7891c25.html easy_instal ...

  9. 【Python】 零碎知识积累 II

    [Python] 零碎知识积累 II ■ 函数的参数默认值在函数定义时确定并保存在内存中,调用函数时不会在内存中新开辟一块空间然后用参数默认值重新赋值,而是单纯地引用这个参数原来的地址.这就带来了一个 ...

  10. 【Python】-NO.97.Note.2.Python -【Python 基本数据类型】

    1.0.0 Summary Tittle:[Python]-NO.97.Note.2.Python -[Python 基本数据类型] Style:Python Series:Python Since: ...

随机推荐

  1. 时间选择控件YearPicker(基于React,antd)

    不知道为什么蚂蚁金服团队没有在ant design的DatePicker中单独给出选择年份的组件,这给我们这种懒人造成了很大的痛苦,自己手造轮子是很麻烦的.毕竟只是一个伸手党,emmmmm..... ...

  2. java 静态代理和动态代理

    代理模式 一.概述 代理是一种模式,提供了对目标对象的间接访问方式,即通过代理访问目标对象.如此便于在目标实现的基础上增加额外的功能操作,前拦截,后拦截等,以满足自身的业务需求,同时代理模式便于扩展目 ...

  3. Wannafly挑战赛27-A/B

    链接:https://www.nowcoder.com/acm/contest/215/A来源:牛客网 题目描述 “White shores, and beyond. A far green coun ...

  4. python目录和文件操作

    一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法. 要操作目录,必须引入os模块 import os1.得到当前工作目录,即当前Python脚本工作的目录路径: os ...

  5. leetcode Most Common Word——就是在考察自己实现split

    819. Most Common Word Given a paragraph and a list of banned words, return the most frequent word th ...

  6. MP3文件结构解析(超详细)

    转自:http://blog.csdn.net/u010650845/article/details/53520426 MP3文件结构解析(超详细) 1. MP3文件结构解析 1.1. 概述 1.1. ...

  7. python列表反转函数

    def reverse(ListInput): RevList=[] for i in range (len(ListInput)): RevList.append(ListInput.pop()) ...

  8. Spring整合Hystrix

    1.添加maven依赖 <dependency> <groupId>com.netflix.hystrix</groupId> <artifactId> ...

  9. Linux 第一周作业

    [](http://images2017.cnblogs.com/blog/1249774/201710/1249774-20171001234038872-10d31233192.pngd

  10. AI新建文件可以新建多个画板5.2