【问题标题】:Parsing HTML with Node JS on Server Side [duplicate]在服务器端使用 Node JS 解析 HTML [重复]
【发布时间】:2025-12-26 12:30:06
【问题描述】:

我正在尝试在不使用浏览器的情况下读取服务器上带有节点 js 的 html 文件的 div 内容。我也希望能够使用 jQuery 操作。

更具体地说,类似content.find("div.t")

有这样做的本地方法吗?

我尝试使用fs.readfilesync 读取服务器上的 html 文件并获取内容,但这给了我一个字符串,而不是我可以进行 jQuery 操作的 html。

谢谢。

【问题讨论】:

    标签: jquery node.js


    【解决方案1】:

    应该以最简单的方式工作:

    var $ = require('jquery');
    var htmlFileString = <valid html of some sort>;
    
    var rootElement = $(htmlFileString);
    rootElement.find('div.t'); 
    

    【讨论】:

    • 我尝试如下: let stringContent = fs.readFileSync(path.join(__dirname, '../pdf/LabReport1.html'), 'utf8'); var rootElement = $(stringContent);我得到了错误:'throw new Error("jQuery 需要一个带有文档的窗口");'
    • 那么我将向您推荐您的问题 cmets 中提到的可能重复项。似乎已经用 jsdom 解决了。
    • 没错。我和cheerio一起做的。