【发布时间】:2019-11-25 14:18:34
【问题描述】:
希望这很简单——我有几个段落。使用 Beautiful Soup,我正在使用 link.parent.name = 'li' 将它们转换为列表,但如果有人能告诉我如何将整个创建的多个 li 标签列表包装在新的 <ul> </ul> 标签中,我将不胜感激。
由于给定页面上将有多个单独的列表,因此我希望能够选择所有兄弟姐妹并将它们全部包装在新标签中。
所以
<li>1</li>
<li>1</li>
<li>1</li>
<li>2</li>
<li>2</li>
<li>2</li>
<li>3</li>
<li>3</li>
<li>3</li>
看起来像
<ul>
<li>1</li>
<li>1</li>
<li>1</li>
</ul>
<ul>
<li>2</li>
<li>2</li>
<li>2</li>
</ul>
<ul>
<li>3</li>
<li>3</li>
<li>3</li>
</ul>
感谢您的帮助。
【问题讨论】:
-
你不能使用普通的
for-loop 并将其添加为普通文本 - 不使用BeautifulSoup吗?您所拥有的只是一个字符串,因此使用字符串函数可能会更简单。最后,如果你想生成 HTML 文件,你可以使用 Jinja2 创建模板,该模板也可以使用for-loops 并且它适用于字符串。 -
顺便说一句:使用
BeautifulSoup我会先创建<ul>,然后在这个<ul>中放入3 个<li>,然后我会为其他<ul>重复它。所以它需要for-loop。
标签: python html list beautifulsoup