xpath的基本使用


//body/div[last()]            body下的最后一个div元素//div[@id]                   div下带id属性的元素//body/*                    body下面所有的元素
//div[@*]                   只要有用属性的div元素
//div[@id='footer']//div    带有id='footer'属性的div下的所有div元素
/@href                       获取标签内元素值//book/title | //book/price         选取 book 元素的所有 title 和 price 元素。

selenium 在结合xpath使用

# xpath 获取的是多个元素数据,通过selenium只能获取到第一个元素
# 返回值为字符串
a = driver.find_element_by_xpath('//*[@id="arc-body"]/table[1]/tbody/tr//td ').text
#find_element_by_xpath 返回属于字符串样式可以进行 转换
# find_elements_by_xpath 返回属于列表样式,不可以直接转换
# 获取多个元素时使用 find_elements_by_xpath
a = driver.find_element_by_xpath('//*[@id="arc-body"]/table[1]/tbody/tr/td').text
a = driver.find_elements_by_xpath('//*[@id="arc-body"]/table[1]/tbody/tr/td')
# 关闭页面
driver.quit()

报错


# 在selenium中的xpath使用  ‘/text()’ 报错,
a = driver.find_element_by_xpath('//*[@id="arc-body"]/table[1]/tbody/tr/td/text()')<input type="text" maxlength="20" class="form-control search-input">
在selenium中使用如下方式取元素会报错WebElement searchInput = driver.findElement(By.className("form-control search-input"));
selenium.common.exceptions.InvalidSelectorException
原因:class 属性值中间的空格表示的是后代选择器 , 如上表示的是“form-control”内的“search-input”,改为如下方式即可WebElement searchInput = driver.findElement(By.className("search-input"));

字符串 转 html

使用lxml 解析字符串数据

import requests
from lxml import etree
# url= 'http://www.tstdoors.com/ldks/48734/4911028.html'a = requests.get(url)tree = etree.HTML(a.text)
lxa = tree.xpath('//*[@id="content"]/text()')
for i in lxa:print(i)

python selenium的xpath的使用相关推荐

  1. Python selenium根据class定位页面元素,xpath定位

    Python selenium根据class定位页面元素 在日常的网页源码中,我们基于元素的id去定位是最万无一失的,id在单个页面中是不会重复的.但是实际工作中,很多前端开发人员并未给每个元素都编写 ...

  2. python selenium语法_selenium之xpath语法总结

    xpath语法 1. 什么是XPath? XPath是一种XML路径,用于浏览页面的HTML结构.他是一种语法或者语言用来查找使用XML路径表达的网页中的任意元素. XPath的基本形式如下: Xpa ...

  3. python简单代码演示效果-Python Selenium的简单演示程序

    前面几篇介绍了下Selenium干什么用的,怎么安装Selenium和WebDriver,这篇就来个简单演示程序让它run起来,看代码领会精神是比较直接的. Python Selenium的运行原理 ...

  4. 如何使用python批量下载-使用 Python + Selenium 批量下载素材

    原文首发于CSDN,略有增删 使用 Python + Selenium 批量下载素材 本文简单介绍使用 Python + Selenium 从ManyPixels线上图库批量下载素材的方法.截止到现在 ...

  5. Python+selenium 自动化-读取excel记录的脚本执行登陆操作实战演示

    我们可以用 excel 来记录自动化,然后读取 excel 来执行命令,excel 可以很方便直观的管理我们录入的自动化.下面给大家演示一下 Python+selenium 自动化的实例,读取 exc ...

  6. Python+Selenium基本语法

    对Selenium自动化已有了解,最近开始做h5端的自动化,所以总结了下Python+Selenium自动化基本语法 一.启动浏览器 1.普通方式启动 #coding=utf-8 import tim ...

  7. python selenium p_python selenium 常见问题列表

    python selenium webdriver 常见问题FAQ 怎么用ChromeDriver ? 从这里下载最新的driver版本并解压 #好吧,这个命令是给linux or osx用户准备的# ...

  8. python selenium定位元素方法,python + selenium 练习篇 - 定位元素的方法

    1.利用ID定位元素(能直接通过ID来定位的元素比较少) # coding=utf-8 from selenium import webdriver driver = webdriver.Chrome ...

  9. Python+Selenium WebDriver API:浏览器及元素的常用函数及变量整理总结

    由于网页自动化要操作浏览器以及浏览器页面元素,这里笔者就将浏览器及页面元素常用的函数及变量整理总结一下,以供读者在编写网页自动化测试时查阅. from selenium importwebdriver ...

最新文章

  1. System.LazyT 延迟加载
  2. Java虚拟机详解----JVM常见问题总结
  3. 远程执行本地查找文件的命令并返回结果
  4. 巧妙利用channel进行golang并发式爬虫
  5. 社区奖品之 【图书】基于Project 2002的项目管理
  6. java算法提高求最大值_藍橋杯 算法提高 求最大值
  7. vscode-textlive-paper学习记录
  8. 基于socket编程的多人聊天室
  9. MySQL数据库远程连接开启方法
  10. 142.PHP session 阻塞问题
  11. 人工智能史(来自wiki)
  12. Hash 表的时间复杂度为什么是 O(1)(面试版)
  13. 中国剩余定理编程实现
  14. BP反向传播算法原理及公式推导
  15. cefsharp 多标签_14 无序列表标签
  16. python判断身份证是否合法的函数_oracle中验证身份证是否合法的函数脚本
  17. 基于51单片机的万年历proteus仿真原理图方案设计
  18. 【odoo15】odoo中的fa-xxx小图标
  19. ES6常问面试题(Promise,async和await 等)
  20. css3扭蛋机,微信小程序 扭蛋抽奖机CSS3动画实现详解_咋地 _前端开发者

热门文章

  1. 《数字图像处理》冈萨雷斯matlab函数statmoments、计算均值和n阶中心矩,并返回行向量
  2. 微型计算机为控制器的基本功能是,微型计算机控制器的基本功能是什么?
  3. 小米8se账号锁_小米 8SE MIUI10_9.9.3 解除账户锁_屏幕锁 纯净ROM ROOT优化版V4.0
  4. 解决Redis K和v 乱码情况 插入整个对象
  5. 在IT企业需要具有的软实力以及怎么在面试时占据优势?
  6. ORACLE对象权限被非授权用户收回的可行性探究
  7. 服装设计Marvelous Designer 11程序安装及注意事项
  8. Oracle收回权限 创建角色
  9. SAP配置——MRP
  10. ROS wiki系列|ROS wiki初探(自用)