我有很多像这样的链接:
<a href="/edit_flat/1674093.html"><b>Edit issue >></b></a>
尝试提取href'内容我使用Xpath表达式:
//a[contains(@href,'/edit_flat')]
但它返回null。我做错了什么?
答案 0 :(得分:1)
//a[contains(@href,'/edit_flat')]
在文档树中的任意位置选择a
元素,其中href
属性包含'/ edit_flat'字符串。
这些匹配元素确实具有这个“href”属性,但是您使用的XPath表达式只返回a
元素,如果有的话。
要实际返回匹配元素的属性值,您需要一个额外的步骤,/
和@href
。所以你想要的是:
//a[contains(@href,'/edit_flat')]/@href
<强>建议:强>
你真正想要的是选择href
以子串“/ edit_flat”开头的链接,因此使用起来更安全:
.//a[starts-with(@href,'/edit_flat')]/@href