请考虑以下
python会话:
- >>> from BeautifulSoup import BeautifulSoup
- >>> s = BeautifulSoup("<p>This <i>is</i> a <i>test</i>.</p>"); myi = s.find("i")
- >>> myi.replaceWith(BeautifulSoup("was"))
- >>> s.find("i")
- >>> s = BeautifulSoup("<p>This <i>is</i> a <i>test</i>.</p>"); myi = s.find("i")
- >>> myi.replaceWith("was")
- >>> s.find("i")
- <i>test</i>
请注意第4行后s.find(“i”)的缺失输出!
这是什么原因?有解决方法吗?
编辑:实际上,该示例未演示usecase,它是:
- myi.replaceWith(BeautifulSoup("wa<b>s</b>"))
每当插入的部分包含非常重要的HTML代码时,我都不会看到如何用其他东西替换这种语法.只是拥有
- myi.replaceWith("wa<b>s</b>")
将替换实体的html特殊字符.