【发布时间】:2021-06-17 09:41:02
【问题描述】:
我正在使用 Node.js 和 Puppeteer 构建一个爬虫。在这种情况下,Puppeteer 获取页面的主要内容,将其保存为字符串,Rss Parser 将其转换为 RSS 提要,创建 XML 文件,并将该文件保存为包含抓取内容的物理文件。问题是,如果抓取的内容包含 Adsense 代码等脚本元素,它也会被抓取。我需要一个简单的正则表达式,它可以删除任何脚本元素及其所有属性以及介于两者之间的所有内容。
我一直在寻找一个简单的例子,可以让我做类似的事情:
var content = scrapedcontent;
content = content.replace(myregex, '');
我找不到适合我的示例。到目前为止,我发现的最接近的东西建议使用 jQuery。我不能使用 jQuery,因为这是一个不包含 jQuery 库的 Node.js 项目,我不想添加 jQuery 只是为了从字符串中去除脚本。
另外,请不要用关于正则表达式及其字符含义的讲座来回应。对我来说,这就是全部。我只需要找到说“这是正则表达式,这就是它的作用,复制并粘贴你就完成了”的东西。
【问题讨论】:
-
回复:你的最后一段,上帝保佑我们要求你学习任何东西或做任何工作......
-
我不明白你为什么不想使用 jQuery。当您操作 DOM 时,它非常适合这样的事情,并且当它是解决您的问题的明智解决方案时,您对 我不想添加 jQuery 的推理很有趣。无论如何,使用正则表达式处理 HTML 通常被认为是bad idea。我发现了一些东西that might be of use to you, though.
-
您应该知道
<script>并不是将javascript 添加到html 的唯一方法。 -
任何可以用 jQuery 编写的东西也可以不用 jQuery 来编写。 jQuery 示例的链接是什么?
-
这似乎适用于开始标签以及除了结束标签之外的后续内容 /
标签: javascript node.js regex puppeteer