Cheerio: select 伪元素

Cheerio: select pseudo-element

我有以下 HTML:

<div class="media-body">

  <div class="avatar-photo pseudo-a" tabindex="0" data-href="https://" style="background-image: url(https://6fqap94ibfgqil3r47o1.jpeg);"></div>
  <div class="media-user-reviews">
    <div class="rating-stars rating-4"><i class="fas"></i><i class="fas"></i><i class="fas"></i><i class="fas"></i><i class="far"></i></div>                        <span class="rating-mini-count">76</span>
  </div>
</div>

div .media-user-name有一个伪元素,像这样:

情况是,几年前我使用 Xray 库来解析元素,然后我将这个元素记下来,状态为“@data-online”。但就目前而言,我想用 Cheerio 代替它。当我尝试:

    const page = cheerio.load(response.data);
    const test = page.html('body');
    // I tried even 'div.avatar-photo.pseudo-a::active'
    const status = page(node).find('div.avatar-photo.pseudo-a');

此外,我尝试使用 .css('background') 或其他任何方式对元素做出反应(实际上我不需要 background 本身,但它也是一个选项。

所以,我的问题是,如何到达 div.avatar-photo.pseudo-a::active(屏幕截图上的元素)?

因为 cheero 给我一个错误,那就是不支持它。

您可以使用 querySelector 访问 DOM 元素的属性,如下所示:

所有密码输入:input[type="password"]

所有 div 包含 data-name 标签(只是一个例子,可以是任何东西):div[data-name]

在此处阅读更多相关信息:

querySelector

a complex example [MDN]