title: BeautifulSoup can't parse nested div
body: <p><strong>EDIT: I managed to solve the problem by changing the parser from html.parser to lxml.</strong></p>
  
  <p>I'm trying to parse a website and it seems they have unusual number of nested divs.</p>
  
  <p>What I want is every h1 under <code>div class="agenda-item"</code>. BUT, I want only the divs under the div with <code>id = nu-binnenkort</code> (the other one is <code>id = archief</code>, which I am not interested)</p>
  
  <p>I managed to parse every h1, but I don't want the ones under archief. I tried the following code, but it only returns the first h1, for some reason I don't know.</p>
  
  <pre><code>from bs4 import BeautifulSoup
  from urllib.request import Request, urlopen
  from datetime import datetime
  
  site= "https://www.tac.nu/en/programma/"
  req = Request(site)
  page = urlopen(req)
  soup = BeautifulSoup(page,'html.parser')
  
  programma = soup.find('div',id='nu-binnenkort')
  hl1 = programma.find('div',class_='vc_tta-panel-body')
  hl2 = hl1.find('div',class_='wpb_text_column')
  hl3 = hl2.find('div',class_='wpb_wrapper')
  hl4 = hl3.find_all('div',class_='agenda-item')
  for div in hl4:
     print(div.h1.text)
  </code></pre>
  
  <p>Any suggestions? Is there a way to parse h1's that has a parent (grand-grand-grand.... in this case) with a specific ID (id=nu-binnenkort in this case)?</p>