繁体   English   中英

Python:lxml xpath获得两个不同的类

[英]Python : lxml xpath get two different classes

这是我的示例Python代码

import requests
import lxml.html

page = '<div class="aaaa12"><span class="test">22</span><span class="number">33</span></div><div class="dddd13"><span>Kevin</span></div>' 
tree = lxml.html.fromstring(page)


number = tree.xpath('//span[@class="number"]/text()')
price = tree.xpath('.//div[@class="dddd13"]/span/text()')

print number
print price

我跑的时候会像下面这样

['33']
['Kevin']

但是,我想像= ['33','Kevin']一样立刻获得两者

number = tree.xpath('//span[@class="number"]/text() or //div[@class="dddd13"]/span/text()')

我无法获得价值。 获取两个不同类的语法是什么?

使用| 并运算符,以加入多个完整路径表达式的结果:

number = tree.xpath('//span[@class="number"]/text() | //div[@class="dddd13"]/span/text()')

演示:

>>> import lxml.html
>>> page = '<div class="aaaa12"><span class="test">22</span><span class="number">33</span></div><div class="dddd13"><span>Kevin</span></div>' 
>>> tree = lxml.html.fromstring(page)
>>> tree.xpath('//span[@class="number"]/text() | //div[@class="dddd13"]/span/text()')
['33', 'Kevin']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM