xpath和运算符始终返回true

xpath和运算符始终返回true,xpath,Xpath,返回15 "//a[contains(@data-testid,'actionLink')] | //a[contains(@aria-pressed,'false')]" 这是真的 但我想使用和运算符 "//a[contains(@data-testid,'actionLink')] or //a[contains(@aria-pressed,'false')]" 返回true,但我需要整数值 根据答案是和。如何获取整数值 HTML代码: "//a[contains(@data-testi

返回15

"//a[contains(@data-testid,'actionLink')] | //a[contains(@aria-pressed,'false')]"
这是真的

但我想使用和运算符

"//a[contains(@data-testid,'actionLink')] or //a[contains(@aria-pressed,'false')]"
返回true,但我需要整数值

根据答案是和。如何获取整数值

HTML代码:

"//a[contains(@data-testid,'actionLink')] and //a[contains(@aria-pressed,'false')]"

只是想澄清一下
|
不是或是并集并返回一个结果集。
您正在将
//a[contains(@data testid,'actionLink')]
的结果集与
//a[contains(@aria pressed,'false')]
的结果集相结合

得到布尔结果的原因是,布尔运算符就是这样工作的(它们为您提供对两个条件的布尔响应,对于节点列表,对于非空列表为true,对于空列表为false)

如果您想要获得您似乎想要做的节点,您必须以匹配
a
标记的方式编写查询,其中过滤器包含您的组合比较:

<a aria-pressed="false" class=" _6a-y _3l2t  _18vj" data-testid="UFI2ReactionLink" href="#" role="button" tabindex="-1"><i alt="" class="_6rk2 img sp_gFJy5OP1MUR sx_ee42f4"></i>Like</a>

为什么要整数值?
15
代表什么?我将单击随机链接并找到解决方案//[@role='button'和@aria pressed='false']注意,与
|
(union)操作符类似的是使用
intersect
操作符,它形成两个节点集的交集。这需要XPath 2.0或更高版本。表达式
//x[condition-1]intersect//x[condition-2]
给出的结果与表达式
//x[condition-1和condition-2]
相同。基本布尔代数和集合论在这里。。。
"//a[contains(@data-testid,'actionLink') and contains(@aria-pressed,'false')]"