gpt4 book ai didi

javascript - 如何使用 cheerio 获取具有不同类的元素?

转载 作者:搜寻专家 更新时间:2023-10-31 23:39:43 29 4
gpt4 key购买 nike

我正在使用 node 和 cheerio 抓取 bing 搜索结果。我需要从两个具有不同 ID 的列表中获取所有 href 值。

  1. 如何将这两个列表中的所有标签集中在一起陈述?我试过了,但没用。
  2. 在第一个列表中,我不想要带有类的 li 标签“b_pag”。我怎样才能为它写一个选择器?像 Not 条件或一些东西。

$("a", ["#b_content", "#b_context"]).each((index, element) => { const href = $(element).attr("href"); links.push(href); });

请参阅随附的 html 屏幕截图。 html

更新 2:我想忽略整个 <li class="b_pag">标签,但我在这里和其他地方找到的解决方案只忽略了那个标签。任何其他<li>它下面的标签,有任何其他或没有类,不会被忽略。

我找到了解决方法。我可以捕获 <li>具有其他类名的标签。查看the html here .我正在考虑为前四个类使用四个不同的选择器。喜欢$(.b_algo)$(.b_ans) .但是我怎样才能捕获另外两个 <li>有多个与之关联的类的标签?我无法从 cheerio docs 中得到一个清晰的想法。 .希望我对你们足够清楚!类似于 $(.b_ans b_mop)没用。 $("li[class=b_ans b_mop")也没有.

最佳答案

试试这个,

$("#b_content", "#b_context").each(function(i, elem) {
array[i] = {
a: $(this).find("a").attr("href")
};
});`

要选择除类“b_pag”之外的“li”,请使用 li:not( .b_pag )

关于javascript - 如何使用 cheerio 获取具有不同类的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54898779/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com