When extracting body of a document in HTML source format (i.e. without pandoc conversion before display), use BeautifilSoup, which is more tolerant, instead of xml.dom.minidom, which crashes too often.
def update(obj, kwargs):
"""
Update obj attributes with values from kwargs
"""
for k,v in kwargs.items():
if hasattr(obj,k):
setattr(obj,k,v)