一、python+selenium遍历某一个标签中的内容

举个例子:我要获取列表标签<li></li>的内容

根据python+selenium定位到列表整体,使用for循环获取列表文本;可用于校验列表是否存在你需要的文本内容

1.获取内容不包含嵌套层列表

给出代码:

from selenium import webdriver
import time d = webdriver.Chrome()
d.maximize_window() # 窗口最大化
###登录某网站
d.get('http://xx.xxx.xx.xx:xxxx/')
d.find_element_by_xpath('//*[@id="userName"]').send_keys('xxx')
d.find_element_by_xpath('//*[@id="userPwd"]').send_keys('xxx')
d.find_element_by_xpath('//*[@id="login"]').click()
time.sleep(2)
###切换表单,进入到操作页面
d.find_element_by_xpath('//*[@id="menu_ul"]/li[5]/a').click()
d.switch_to_frame('mainframe2')
d.find_element_by_xpath('//*[@id="nav-accordion"]/li[2]/a').click()
d.switch_to_frame('mainframe')
d.switch_to_frame('vehIframe')
###定位到要获取标签的顶级元素,并使用for循环获取
names = d.find_elements_by_xpath('//*[@id="vehGroupTree_1"]')
lists = []
for i in names:
a = i.text
lists.append(a)
print(a, i.get_attribute("href")) # 打印遍历标签出来的内容和获取href属性的内容
print(lists)
print(lists[0].split('\n'))
print(len(lists[0].split('\n'))) # 打印列表元素数目

注意:有些列表不仅仅包含嵌套列表,还有扩展项(指的是“+”可以展开的那种),这里我们获取的内容只是最外层内容(获取那一层内容取决于定位元素names = d.find_elements_by_xpath('//*[@id="vehGroupTree_1"]')),使用这种方式要想获取嵌套列表的内容,还需要逐层展开(点开)嵌套层才行,否则该元素是隐藏起来的。

python+selenium遍历某一个标签中的内容的更多相关文章

  1. 03_MyBatis基本查询,mapper文件的定义,测试代码的编写,resultMap配置返回值,sql片段配置,select标签标签中的内容介绍,配置使用二级缓存,使用别名的数据类型,条件查询ma

     1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> < ...

  2. java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容

    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...

  3. javascript jquery 修改指定标签中的内容

    javascript jquery 修改指定标签中的内容 $("#test1").text("Hello world!"); document.getEleme ...

  4. Java IO把一个文件中的内容以字符串的形式读出来

    代码记录(备查): /** * 把一个文件中的内容以字符串的形式读出来 * * @author zhipengs * */ public class FileToString { public sta ...

  5. Python+Selenium进行UI自动化测试项目中,常用的小技巧1:读取excel表,转化成字典(dict)输出

    从今天开始我将会把在项目中遇到的问题,以及常用的一些技巧来分享出来,以此来促进自己的学习和提升自己:更加方便我以后的查阅. 现在要说的是:用Python来读取excel表的数据,返回字典(dict), ...

  6. python+selenium+unnitest写一个完整的登陆的验证

    import unittest from selenium import webdriver from time import sleep class lonInTest (unittest.Test ...

  7. Python+Selenium+Chrome 的一个案例

    第一步,下载chromeDrive:http://npm.taobao.org/mirrors/chromedriver(我下载的是2.43版本的chromedriver_win32.zip) 下载之 ...

  8. 用WSDL4J解析types标签中的内容

    WSDL4J是一种用来解析WSDL文本的常用工具. 但网络上用WSDL4J来解析wsdl文档complexType标签中内容的问题一大堆也没有有效的解决方法.今天在我“遍历”wsdl4j的api文档和 ...

  9. js修改div标签中的内容

    <div id='divId'>初始文字</div> <script> $(document).ready(function(e){ $('#divId').htm ...

随机推荐

  1. Shell 变量操作

  2. android5.1 隐藏状态栏

    修改frameworks/base/core/res/res/values/dimens.xml文件中 <!-- Height of the status bar --> <!-- ...

  3. OK。第一个shell script 脚本

    很简单吧.也很容易理解.读取两个字符放到变量firstname和lastname中,然后输出 编辑日期格式 上面是编辑日期格式.下面的例题是按照日期格式来分类创建文件

  4. Android蓝牙自动配对Demo,亲测好使!!!(转)

    蓝牙自动配对,即搜索到其它蓝牙设备之后直接进行配对,不需要弹出配对确认框或者密钥输入框. 转载请注明出处http://blog.csdn.net/qq_25827845/article/details ...

  5. day05 python字典

    day05 python   一.字典     1.dict 用{}表示, 存放的是: key:value    (开发的都知道的是键值对数据,这样说)         key: 关键字不能重复, 不 ...

  6. 初撩Django-RESTful-rest_framework序列化(将模型序列化为JSON)

    官方网站: https://www.django-rest-framework.org/ 翻译网站:https://q1mi.github.io/Django-REST-framework-docum ...

  7. Python排序功能进阶

    sorted和sort() li = [9, 1, 8, 2, 7, 3, 6, 4, 5] s_li = sorted(li) print ('Sorted Variable: \t', s_li) ...

  8. 当我们在Java中新建一个对象的时候发生了什么?

  9. leetcood学习笔记-7

    Python join()方法 join()方法语法: str.join(sequence) 参数 sequence -- 要连接的元素序列. 返回值 返回通过指定字符连接序列中元素后生成的新字符串. ...

  10. VMware Network Adapter VMnet1/8详解

    转自:https://www.cnblogs.com/systemnet123/articles/2640883.html VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网 ...