gpt4 book ai didi

node.js - Node 中的 DOM 树到 HTML

转载 作者:搜寻专家 更新时间:2023-11-01 00:06:39 25 4
gpt4 key购买 nike

我真的是 Node 新手。我正在研究 REST 调用。我从 Postman 收到一个带有 URL 的请求(使用它来检查 REST api 调用)。我需要对该 URL 的内容进行一些单词级别的更改

例如,如果收到的 url 是 https://en.wikipedia.org/wiki/Main_Page我需要获取它的内容(当前通过页面上的获取请求来获取)并将所有小的“the”更改为“THE”(大写)。我需要进行很多很多这样的词级更改

为此,我在 Node htmlparser2 ( https://www.npmjs.com/package/htmlparser2 ) 中使用 htmlparser2.DomHandler() 创建了 HTML 页面的 DOM 模型。而且我能够遍历 DOM 并更改单词。

现在我有了一个内容已更改的新 DOM,我需要将其转换回 HTML 并将新的 html 作为响应发送回 postman (客户端)。这样我就可以在我自己的网页上显示更改的内容

所以我的问题是如何从在 node.js 中的 html-parser2 中创建的 DOM 树创建 HTML

PS:我可以在不制作 DOM 的情况下发送原始 html 并显示原始内容DOM:文档对象模型

最佳答案

只需使用 htmlparser-to-html图书馆。

安装它:

npm install --save htmlparser-to-html

要求它:

const html = require('htmlparser-to-html')

假设您解析了 doctype 标签并将结果 dom 对象输出到 console.log:

[ { name: '!doctype',
data: '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"',
type: 'directive'} ]

使用函数html()转换dom对象:

html({ name: '!doctype',
data: '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"',
type: 'directive'})

结果——你解析的相同标签:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

关于node.js - Node 中的 DOM 树到 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35128639/

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