Они все такие. Я еще не встречал ни одной html-страницы, найденной в дикой природе, которую lxml.html не мог разобрать. Если lxml barfs на страницах, которые вы пытаетесь проанализировать, вы всегда можете предварительно обработать их, используя несколько регулярных выражений, чтобы lxml был доволен.
Сам lxml довольно строг, но lxml.html
- это другой анализатор, который может работать с очень испорченным html. Для крайне непростых html lxml также поставляется с lxml.html.soupparser
, который взаимодействует с библиотекой BeautifulSoup.
Некоторые подходы к разбору сломанного html с использованием lxml.html описаны здесь: http://lxml.de/elementsoup.html