Skip to main content
 首页 » 编程设计

python之BeautifulSoup 在父 DIV 的子 DIV 中添加新标签

2025年05月04日12xiaohuochai

我是 BeautifulSoup 的初学者,我现在正尝试将新标签插入到父 div 的子 div 中。

基本上我有这个 HTML 片段:

 <div class=page-content> 
  <div class="content-block"> 
   //Insert here! 
  </div> 
 </div> 

这是我当前的代码:

    soup = BeautifulSoup(open("index.html"), "lxml") 
 
    div_page_content = soup.find("div", { "class" : "page-content" }) 
    content_block = div_page_content.findChildren() 
 
    button_active = soup.new_tag('a') 
    button_active.attrs['class'] = 'button active' 
    button_active.append('This is a new button!') 
 
    content_block.append(button_active) 
    print content_block 

我可以获取页面内容和他的子内容 block DIV,但是追加函数没有做任何事情,这是我得到的输出:

 [<div class="content-block">\n</div>, <a class="button active">This is a new button!</a>] 

请您参考如下方法:

发现问题,我必须使用 findNext 而不是 findChildren。现在附加工作正常。