当前位置: 首页 > 编程笔记 >

Python lxml解析HTML并用xpath获取元素的方法

柳浩大
2023-03-14
本文向大家介绍Python lxml解析HTML并用xpath获取元素的方法,包括了Python lxml解析HTML并用xpath获取元素的方法的使用技巧和注意事项,需要的朋友参考一下

代码

使用方法见注释

#-*- coding: UTF-8 -*-

from lxml import etree

source = u'''
<div><p class="p1" data-a="1">测试数据1</p>
<p class="p1" data-a="2">测试数据2</p>
<p class="p1" data-a="3" style="height:100px;">
<strong class="s">测试数据3</strong></p>
<p class="p1" data-a="4" width="200"><img src="1.jpg" class="img"/><br/>
图片</p>
'''

# 从字符串解析
page = etree.HTML(source)

# 元素列表
ps = page.xpath("//p")
for p in ps:
  print u"属性:%s" % p.attrib
  print u"文本:%s" % p.text

# 文本列表
ts = page.xpath("//p/text()")
for t in ts:
  print t

# xpath定位 
ls = page.xpath('//p[@class="p1"][last()]/img')
for l in ls:
  print l.attrib

以上这篇Python lxml解析HTML并用xpath获取元素的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 我能把1打印出来吗? 我尝试了以下: 它返回给我一个错误: 给定的选择器。//[@id='version id']/tbody/tr/td[2]/span/text()无效或不会导致webelement。出现以下错误:InvalidSelectorError:xpath表达式“.//[@id='version id']/tbody/tr/td[2]/span/Text()”的结果是:[object

  • 我正在尝试创建一个用户可以在浏览器中存储注释的应用程序。 为了弄清楚用户在文档中创建注释的位置,我正在尝试存储所选文本的xpath和偏移量。 我到处搜索过,似乎有很多从xPath字符串中检索元素的示例,但没有很好的从DOM元素中查找xPath的示例。 以下是我尝试过的: 其中getXPathForElement如下所示: 这段代码给出了一个很长的看起来很奇怪的文本,如下所示:(我认为这不是一个真正

  • 问题内容: 我有具有特定名称的元素的NodeList,我想拥有所有theese节点的XPath。 我找不到方法。 我正在寻找类似GET_XPATH()的方法 有人知道该怎么做吗?甚至有可能吗? 如果可能,XSLT也可以使用它,但是如果有人知道Java中的这种可能性,则最好使用它。 原因:我需要一组指向XML库的指针。指向定义元素的指针。 输入示例: 输出: 问题答案: 以下样式表: XSLT 1.

  • 我需要获得一个DOM元素的XPath来持久化它,这样我就可以查找该元素。 我已经尝试了这个答案的方法,但是当我用jQuery创建的对象调用该方法时... ...我得到这个错误: 未捕获的TypeError:无法读取未定义(…)的属性“子节点” 我尝试将替换为,将替换为,将替换为,但我收到未定义为函数结果的... 那么,您是否有一个与类似的函数可以使用jQuery呢?

  • 有了下面的XML示例文档,我需要发出一个XPath/XQuery表达式来获取CD元素的每个子元素的元素名。 所以我需要的查询返回标题,艺术家,国家,国家,价格,年份,任何人都可以帮助请?谢谢

  • 本文向大家介绍写一个根据xpath获取元素的方法相关面试题,主要包含被问及写一个根据xpath获取元素的方法时的应答技巧和注意事项,需要的朋友参考一下