假设现在我在 soup 中有一个由 findAll 获得的标签 div
。
div = <div>text1<span>text2<\span>text3</div>
请注意,我想保留一些外部结构。例如,div.previous_element
将连接到 soup 中的其他标签。现在我展开了跨度,这样
div.contents=['text1','text2','text3']
我想要的是:
- div.contents=['text1text2text3']
- div.string 不是 none。
- 与 soup 的连接未切断(div.previous_element 也正常工作)
最佳答案
试试这个。
from simplified_scrapy.simplified_doc import SimplifiedDoc
html='''<div>text1<span>text2<\span>text3</div>'''
doc = SimplifiedDoc(html)
div = doc.div
print (div)
print (div.text)
结果:
{'tag': 'div', 'html': 'text1<span>text2<\\span>text3'}
text1text2text3
您可以获取 SimplifiedDoc here 的示例
关于python - 通过 beautifulsoup 安全删除标签中的子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59748046/