a95825ede8
- Things are suggested in python3 porting guide. https://docs.djangoproject.com/en/1.8/topics/python3/ 1. adding ```from django.utils.encoding import python_2_unicode_compatible``` 2. ``` __str__``` instead of ```__unicode__``` https://docs.djangoproject.com/en/1.8/topics/python3/#str-and-unicode-methods 3. Adding ```from __future__ import unicode_literals``` at the top of your Python modules https://docs.djangoproject.com/en/1.8/topics/python3/#unicode-literals 4. Removing the `u` prefix before unicode strings; https://docs.djangoproject.com/en/1.8/topics/python3/#unicode-literals - also closed #66 Signed-off-by: Hiroshi Miura <miurahr@linux.com>
17 lines
471 B
Python
17 lines
471 B
Python
from __future__ import unicode_literals
|
|
from html5lib import html5parser, sanitizer
|
|
|
|
import markdown
|
|
|
|
|
|
def parse(text):
|
|
|
|
# First run through the Markdown parser
|
|
text = markdown.markdown(text, extensions=["extra"], safe_mode=False)
|
|
|
|
# Sanitize using html5lib
|
|
bits = []
|
|
parser = html5parser.HTMLParser(tokenizer=sanitizer.HTMLSanitizer)
|
|
for token in parser.parseFragment(text).childNodes:
|
|
bits.append(token.toxml())
|
|
return "".join(bits)
|