假设我有这样的DOM:
<div id="tabsmenu">
<ul>
<li class="one"><a href="'#foo" class="ui-tabs-anchor" id="tab1"></a>foo</li>
<li class="two"><a href="#baz" class="ui-tabs-anchor" id="tab2">baz</a> </li>
</ul>
</div>
我想从<a href>
元素中获取文字:
# desired output: ['#foo', '#baz']
如何使用xpath
并使用组合id
和class
内的特定id
元素?
已经尝试过:
some_doc.xpath('//a[@id="tabsmenu"]/[@class="ui-tabs-anchor"]/@href')
# select all href tags of any a element that is in id tabsmenu and class attribute ui- tabs-anchor
编辑 - 将tabmenu
更正为tabsmenu
答案 0 :(得分:2)
你最有可能找到这样的东西:
//div[@id='tabsmenu']//a[@class='ui-tabs-anchor']/@href
这将获得属于href
标记的所有a
属性,其中包含类ui-tabs-anchor
,并且位于div
元素内且标识为tabsmenu
的属性。
另外,您可能想看一下这个问题:
Find out if class name contains certain text
这是因为该类将匹配确切的值(ui-tabs-anchor
),并且可能会添加一些其他类,例如class="ui-tabs-anchor disabled"
,然后就不会有匹配。