【问题标题】:How to get className of an element in jsdom?如何获取jsdom中元素的className?
【发布时间】:2020-06-13 13:57:55
【问题描述】:

第一次发帖很抱歉,如果我搞砸了。以下是我尝试过的代码:

const domPreParse = new JSDOM(incident); //incident is the html fragment I want to parse
const dom = domPreParse.window.document;

const cNameHome = dom.querySelector('[data-type="home-icon"], svg').className;

所以cNameHome 返回一个只有第一个类名的对象。元素上有多个类名(例如class="class1 class2")。如何最好返回空格分隔的字符串中的所有类。

这是我要解析的代码:

<div class="sco" data-type="middle">
    <div class="clear">
        <span class="inc" data-type="home-icon"></span>
        <span class="score" data-type="score">&nbsp;</span>
        <span class="inc" data-type="away-icon">
            <svg class="inc yellowcard"><use xlink:href="#icon-yellowcard"></use></svg>
        </span>
    </div>
</div>

感谢您的帮助。

【问题讨论】:

  • 您确定没有其他类是由脚本等动态添加的吗?
  • 我确定。我正在传递一段我打印的 HTML,我可以在元素上看到多个类。

标签: node.js web-scraping jsdom


【解决方案1】:

问题出在我的 CSS 选择器上。我应该使用[data-type="home-icon"] &gt; svg

【讨论】:

    猜你喜欢
    • 2011-02-10
    • 2021-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多