【问题标题】:Parse HTML string to JS in Nodejs在 Nodejs 中将 HTML 字符串解析为 JS
【发布时间】:2020-12-15 15:23:19
【问题描述】:

我想知道是否有更好的方法来捕获输入标签内的值,而不是在 JS 中使用正则表达式。

"<html><head></head><body onload=\"document.form1.submit()\"><form name=\"form1\" method=\"post\" action=\"\" ><input name=\"Token\" type=\"hidden\" value=\"\"><input name=\"ID\" type=\"hidden\" value=\"12120012732dafd4\"></form></body></html>"

理想情况下,我只想捕获 ID 值 12120012732dafd4

【问题讨论】:

    标签: javascript html node.js


    【解决方案1】:

    由于节点中没有 DOM,因此您必须从 HTML 字符串初始化 Cheerio 实例。 (这个例子来自cheerio自述文件)

     var cheerio = require('cheerio'),
            $ = cheerio.load("<html><head></head><body onload=\"document.form1.submit()\"><form name=\"form1\" method=\"post\" action=\"\" ><input name=\"Token\" type=\"hidden\" value=\"\"><input name=\"ID\" type=\"hidden\" value=\"12120012732dafd4\"></form></body></html>"
    );
        
        $('input').val();
    

    【讨论】:

      【解决方案2】:

      你可以使用cheerio:

      h = "[your HTML]"
      const $ = cheerio.load(h)
      console.log("Value:", $("form input[name='ID']").attr("value"))
      

      演示:https://runkit.com/adelriosantiago/get-attr-from-html-in-node

      您也可以使用jsdomhtmlparser

      【讨论】:

        猜你喜欢
        • 2012-05-22
        • 2012-05-31
        • 1970-01-01
        • 2021-08-24
        • 2020-09-20
        • 1970-01-01
        • 2019-07-12
        相关资源
        最近更新 更多