簡體   English   中英

如何使用 Bleach 完全刪除來自 HTML 的鏈接?

[英]How to remove links from HTML completely with Bleach?

Bleach從 HTML 中剝離非白名單標簽,但留下子節點,例如

>>> import bleach
>>> bleach.clean("<a href="">stays</a>", strip=True, tags=[])
'stays'
>>>  

如何刪除整個元素及其子元素?

你應該使用lxml Bleach 僅用於清理數據並確保您存儲的標記的安全性。

您可以使用lxml來解析結構化數據,例如 HTML 或 XML。

考慮一個簡單的 html 文件;

<html>
<body>
<p>Hello, World!</p>
</body>
</html>
from lxml import html

root = html.parse("hello_world.html").getroot()

print(html.tostring(root))

# <html><body><p>Hello, World!</p></body></html>

p = root.find("body/p")

p.drop_tree()

print(html.tostring(root))

# <html><body></body></html>

在相關說明中,如果您想使用lxml研究一些更高級的解析,我在這里最古老的問題之一是讓 python 解析 xml 並從中編寫 python 代碼。 編寫一個 Python 工具將 XML 轉換為 Python?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM