Jag provade lite prestanda på markupändringar liknande dem vi gör i virtuellt campus när vi skickar ut content.  Beautifulsoup var som väntant långtifrån snabbast, men html5lib (i alla fall på det sätt jag använde det) var faktiskt ännu långsammare.  Jag implementerade en markupfixning med de olika verktygen och timade 3x 1000 iterationer med ganka kort indata. 

# timeit.repeat(stmt=t_html5lib, number=1000)
# [1.75, 1.73, 1.73]

# timeit.repeat(stmt=t_beautifulsoup, number=1000)
# [0.780, 0.769, 0.772]

# from xml.etree import ElementTree
# timeit.repeat(stmt=t_etree, number=1000)
# [0.319, 0.300, 0.301]

# from xml.etree import cElementTree as ElementTree
# timeit.repeat(stmt=t_etree, number=1000)
# [0.146, 0.137, 0.135]

# timeit.repeat(stmt=t_lxml, number=1000)
# [0.0579, 0.0579, 0.0576]

Vi bör alltså kunna tjäna relevant tid på att implementera content-omskrivningar i lxml i stället för beautifulsoup.