我正在尝试使用xpath从许多页面中提取链接,我不确定我在这里做错了什么。这些页面的格式很差,带有斜体,这就是我认为它正在抛弃它。
这是html格式化方式的一个示例:
<p>
<i>This content is constant</i>
<a href="example.com/exampe123">
<i>This text changes</i>
</a>
<i> </i>
</p>
在此示例中,单词“text”不会改变,但其余单词会改变。
我尝试使用以下xpath,但它不起作用:
//p/a[contains(text(), 'text')]/@href
答案 0 :(得分:0)
您可以使用以下XPath
个表达式之一:
//p/a[i[contains(text(), 'text')]]/@href
//p/a[contains(., 'text')]/@href
答案 1 :(得分:0)
如果<i>
元素导致问题,或者它们格式错误,那么在创建XPath对象之前,如何以文本方式删除所有<i>
和</i>
字符串呢?
var cleanString = dirtyString.Replace("<i>","").Replace("</i>","");
然后从该“干净”字符串创建您的XPath对象。您可能无需知道应用中<i>
段的位置。