analisar fragmento de corpo html em lxml

Estou tentando analisar um fragmento de html:

<body><h1>title</h1><img src=""></body>

eu usolxml.html.fromstring. E isso está me deixando louco porque continua tirando a roupa<body>&nbsp;tag dos meus fragmentos:

 > lxml.html.fromstring('<html><h1>a</h1></html>').tag
 'html'
 > lxml.html.fromstring('<div><h1>a</h1></div>').tag
 'div'
 > lxml.html.fromstring('<body><h1>a</h1></body>').tag
 'h1'

Eu também tentei odocument_fromstring, fragment_fromstring, clean_html&nbsp;compage_structure=False, etc ... nada funciona.

Eu preciso usar lxml, já que estou passando o fragmento html para PyQuery.

Eu só quero lxml para não mexer com o meu fragmento de html. É possível fazer isso?