概述

这一节主要列举一些与或非的具体使用方法。

条件判断

条件关系:and与

语法

tagname[condition1 and condition2]

选中同时符合condition1和condition2的标签

示例

网站:www.qq.com
要求:将今日话题下面的几个大标题过滤出来
实现
image.png
这里用到的代码是:

  1. $x("//a[@class='cate' and contains(@dt-params,'今日话题')]").map(x=>x.text)

条件关系:or或

语法

tagname[condition1 or condition2]

选中符合condition1和condition2其中之一条件的标签

示例

网站:www.qq.com
要求:将今日话题、图画下面的几个大标题过滤出来
分别过滤今日话题和图画,如下:
image.png
用or将这两个条件连接起来,只要满足其中一个,就过滤出来。如下:
具体连接的语法是: (condition1) or (condition2)
如下:

  1. $x("//a[(@class='cate q-icons icon-pic' and contains(@dt-params,'图话')) or (@class='cate' and contains(@dt-params,'今日话题'))]").map(x=>x.text)

效果如下:
image.png

条件关系:not非

语法

tagname[not(condition1)]

选中符合condition1和condition2其中之一条件的标签

示例

还是上面与的例子,只不过代码改成了下面:
$x("//a[not(@class='cate')]").map(x=>x.text)
效果:获取所有class不等于’cate’的a标签
效果如下:
image.png