繁体   English   中英

从本地文件中删除/编辑 HTML 标签

[英]Removing/editing HTML tags from local file

我想删除/编辑文件中的几个 HTML 标签。

最小示例:我的磁盘上有这个输入 HTML 文件

<!DOCTYPE html>
<html clang="en">

<head>
<meta charset="utf-8">
<title>test</title>
<style>
.remove-tag { color: #FF0000; }
.remove-div { color: #0000FF; }
</style>
</head>

<body>

<p>Hello world!</p>

<div class="remove-tag">
<p>I just want to remove the open/close div tags</p>
</div>

<div class="remove-div">
<p>I want the remove the div and all its content</p>
</div>

</body>

</html>

我想处理它以便我得到这个

<!DOCTYPE html>
<html clang="en">

<head>
<meta charset="utf-8">
<title>test</title>
<style>
.remove-tag { color: #FF0000; }
.remove-div { color: #0000FF; }
</style>
</head>

<body>

<p>Hello world!</p>

<p>I just want to remove the open/close div tags</p>

</body>

</html>

在您看来,最简单/最直接的方法是什么? 我希望能够编写某种脚本以在给定文件上本地运行以获取输出。 或者使用一些软件来执行它,并给出要遵循的规则列表。

我对 regex/sed/... 非常有信心,但是使用这些工具对于玩 HTML 标签是一个很大的NO NO(并且可以理解为什么)。

我已经阅读了有关 javascript( getElementsByClassName() ,...)的信息。 用 javascript 做了一些初步的步骤,安装 Node.js。 我什至无法打开文档来检索元素...看起来我必须安装/导入 jsdom。 我有点卡住了...

阅读 jQuery。 看过几个命令示例,但我不知道如何在本地文件上运行它们。 总的来说,我对 jQuery 完全是个菜鸟。

阅读 HTML 解析器。 Python 似乎有一个 HTML 解析器库,我可以用它来完成任务。

还希望有一个HTML解析器软件; 看起来没有。

还有其他提示吗?

试试这个脚本:

<script>

   var removeTag= document.getElementsByClassName('remove-tag'); 
   for(var i=0; i<removeTag.length;i++){
      var innerHTML =  removeTag[i].innerHTML; 
      let div = document.createElement('div');
      div.innerHTML = innerHTML;
      insertAfter(div,removeTag[i]);
      removeTag[i].remove();
    
      }


         var removeDiv= document.getElementsByClassName('remove-div');  
         for(var i=0; i<removeDiv.length;i++){
            removeDiv[i].remove();
         }



      function insertAfter(newNode, existingNode) {
           existingNode.parentNode.insertBefore(newNode, existingNode.nextSibling);
        }
    </script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM