<h1>タイトル</h1>
<h2>サブタイトル1<h2>
<ul>
<li>本文</li>
<li>本文</li>
...
</ul>
<h3>サブサブタイトル<h3>
<ul>
<li>本文</li>
<li>本文</li>
...
</ul>
<h2>サブタイトル2<h2>
...
<h2>サブタイトル3<h2>
...

というような構造のHTMLからタイトル->サブタイトル->サブサブタイトルと指定した範囲内で本文を取得するパースをしたいのですがどのようにすればいいでしょうか。

title_lv1 = soup.findAll('h1')
    for title1 in title_lv1:
        if title1.text == sys.argv[1]:
            print(title1.findAll('h2')

というようにすると空のリストが出力されてしまいます。