用于从链接中选择文本的xpath表达式
我有这样的html文件内容:用于从链接中选择文本的xpath表达式,xpath,Xpath,我有这样的html文件内容: 帮助我构造xpath表达式以获取链接文本(书名)。 我尝试使用/a,但表达式的计算结果没有结果。如果上下文是整个文档,您可能应该使用/而不是/。此外,您可能(对此不确定)需要再下一层来检索文本 我想应该是这样的 //a/text() 编辑:正如托马拉克指出的那样,它是text()而不是text你试过了吗 //a ? 越具体越好: //a[@class='bf' and starts-with(@href, '/book/')] 请注意,这将选择元素。在主机环
帮助我构造xpath表达式以获取链接文本(书名)。
我尝试使用
/a
,但表达式的计算结果没有结果。如果上下文是整个文档,您可能应该使用/
而不是/
。此外,您可能(对此不确定)需要再下一层来检索文本
我想应该是这样的
//a/text()
编辑:正如托马拉克指出的那样,它是text()
而不是text
你试过了吗
//a
?
越具体越好:
//a[@class='bf' and starts-with(@href, '/book/')]
请注意,这将选择
元素。在主机环境中,通过标准DOM方法(如.textContent
属性)很容易提取该节点的文本值
要选择实际文本节点,请参阅此线程中的其他答案。这还取决于文档的其余部分。如果在开始时使用
/
,将返回所有匹配的节点,如果文档中有其他链接,则可能会返回过多的结果
除此之外,一个可能的xpath表达式是//a/text()
您尝试的
/a
仅返回a
-标记本身(如果它是根元素)。要获取链接文本,您需要附加/text()
部分。在
下没有
元素。你的意思是//a/text()
。你的回答帮助我更多,但没有以参数开头@亚历克斯:这只是一个“越具体越好”的例子;)