将所有 innerText 从页面拉入 json 的最佳方法?

Best way to pull all innerText from page into a json?

我正在使用 puppeteer 抓取一系列简单的 html 页面。我想将 html 元素的所有或大部分 innerText 拉到正文中,并以有组织的方式用它填充 json 文件。

页面的格式有一些变化。我想知道是否有一种方法可以很好地从页面中提取文本并对其进行组织,而不太依赖于页面的格式。

我很确定我可以编写程序来说明如果格式 1 是这种情况,则像这样导航,否则如果格式 2 是那样导航等等。然而,我正在寻找一种更优雅的方式来将页面中的所有内部文本拉入 json,并且仍然能够按其元素进行组织。

我推荐 treeWalker 来获取所有的 textNodes

我写了一个扩展,它做了类似的突出显示

https://github.com/asyncb/selection-highlighter/blob/master/highlighter.js