在 Beautiful Soup 中,extract
方法刪除:
-
一個元素及其字符串
-
一個字符串
該方法返回它刪除的所有內容。
例子
考慮以下 HTML 文檔:
my_html = """
<div>
<p>Bob is great</p>
</div>
"""
soup = BeautifulSoup(my_html)
刪除標簽及其內容
要刪除 p
標記及其內部內容:
div_tag = soup.find("div")
p_tag = div_tag.find("p")
p_tag.extract()
<p>Bob is great</p>
在這裏,我們看到 <p>Bob is great</p>
作為輸出,因為 extract()
方法返回您刪除的任何內容。
在 p
標記上調用 extract()
後,它不再是我們的解析樹的一部分:
print(div_tag)
<div>
</div>
然而,問題是,雖然 p
標簽已經從我們的解析樹中分離出來,但它仍然存在於內存中,我們仍然可以訪問它:
print(p_tag)
<p>Bob is great</p>
如果您想完全刪除 p_tag
,請調用 decompose()
方法而不是 extract()
。
刪除字符串
要刪除 p
的內部文本:
tag_div = soup.find("div")
tag_div.find("p").string.extract()
tag_div
<div>
<p></p>
</div>
相關用法
- Python BeautifulSoup extend方法用法及代碼示例
- Python NumPy expandtabs方法用法及代碼示例
- Python math expm1()用法及代碼示例
- Python NumPy expand_dims方法用法及代碼示例
- Python exponential轉float用法及代碼示例
- Python NumPy exp2方法用法及代碼示例
- Python exec()用法及代碼示例
- Python NumPy exp方法用法及代碼示例
- Python expandtabs()用法及代碼示例
- Python NumPy expm1方法用法及代碼示例
- Python math exp()用法及代碼示例
- Python email.message.Message.walk用法及代碼示例
- Python numpy matrix eye()用法及代碼示例
- Python enchant.request_dict()用法及代碼示例
- Python email.headerregistry.DateHeader用法及代碼示例
- Python enum.IntEnum用法及代碼示例
- Python enchant.get_enchant_version()用法及代碼示例
- Python email.message.EmailMessage.add_header用法及代碼示例
- Python emoji轉text用法及代碼示例
- Python enchant.request_pwl_dict()用法及代碼示例
- Python eval用法及代碼示例
- Python email.utils.getaddresses用法及代碼示例
- Python email.header.decode_header用法及代碼示例
- Python email.message.EmailMessage.walk用法及代碼示例
- Python NumPy eye方法用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 BeautifulSoup | extract method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。