首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在C#中使用xpath选择不同类的多个div节点

在C#中使用xpath选择不同类的多个div节点
EN

Stack Overflow用户
提问于 2016-07-19 11:55:50
回答 2查看 1.3K关注 0票数 4

我希望用xpath选择具有不同类的div节点。我该怎么办?我编写了这段代码,但它返回错误。

代码语言:javascript
复制
HtmlWeb w = new HtmlWeb();
string SearchResults = "http://www.ask.com/web?q=" + query.querytxt;
var hd = w.Load(SearchResults);
var titles = hd.DocumentNode.SelectNodes("//div[contains(@class='web-result ur tsrc')] && //div[contains(@class='web-result ur tsrc_Wiki-SA '] && //div[contains(@class='web-result ur tsrc_tube youtube-result ']"); 

我需要这些div

代码语言:javascript
复制
//div[contains(@class='web-result ur tsrc')]
//div[contains(@class='web-result ur tsrc_Wiki-SA ')]
//div[contains(@class='web-result ur tsrc_tube youtube-result ']

这是一个错误:

函数'contains‘在’//divcontains‘中(@class=’web-结果ur tsrc') && //divcontains(@class='web-result ur tsrc_Wiki-SA‘&& //contains)(@class=’web=‘web- tsrc_tube youtube-result '’)中包含无效的参数。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-19 12:27:37

xpath中,contains()函数使用,来比较值,而不是=。因此,使用正确的xpath尝试如下:-

代码语言:javascript
复制
//div[contains(@class, 'web-result ur tsrc')]
//div[contains(@class, 'web-result ur tsrc_Wiki-SA ')]
//div[contains(@class, 'web-result ur tsrc_tube youtube-result ')]

希望它有帮助.)

票数 4
EN

Stack Overflow用户

发布于 2020-05-10 14:35:11

若要选择具有不同类名的所有div(节点),请直接搜索类名。

您可以这样做:

代码语言:javascript
复制
hd.DocumentNode.SelectNodes("@class='web-result ur tsrc' or @class='web-result ur tsrc_Wiki-SA' or @class='web-result ur tsrc_tube youtube-result ']");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38457855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档