1

在识别出原始文档中的文本后,我需要处理 HTML 文档中的某些文本。假设我有这个 HTML 代码

<div id="identifier">
    <a href="link" id="linkid">
    </a>
</div>

我想删除标签id中的属性。<a>我可以使用 BeautifulSoup 识别特定标签,但因为它改变了原始文档的格式,我也无法搜索/替换字符串。我不想只写 BeautifulSoup 的输出,而是想识别原始<a href="link" id="linkid">文档中的标签并替换为 just 。知道如何进行吗?<a href="link">

回答提出的几个问题:

  1. 这是一个庞大的现有代码库,需要进行一些更新,因此它不仅仅是一项单一的搜索/替换工作。

  2. 原始格式很重要,因为组织遵循一定的编码标准来格式化代码,我想保留这些标准。此外,为了完整起见,BS 引入了额外的标签,例如 for 等。

4

1 回答 1

0

你用的是哪个版本的 beautifulsoup?您可以在 bs4 中编辑 html 节点,如字典

来自文档: http ://www.crummy.com/software/BeautifulSoup/bs4/doc/#sharing-tag-names-and-attributes

soup = BeautifulSoup('<b class="boldest">Extremely bold</b>')
tag = soup.b

del tag['class']
del tag['id']

另外,你似乎对beautiful soup 输出修改后的html 代码的方式有问题。如果您想漂亮地打印文档或使用自定义格式,您可以轻松完成

http://www.crummy.com/software/BeautifulSoup/bs4/doc/#output

于 2013-05-09T09:59:13.113 回答