[英]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.