8000 Add html5lib.serialize.serialize and html5lib.serialize · awesome-python/html5lib-python@6cd3237 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6cd3237

Browse files
committed
Add html5lib.serialize.serialize and html5lib.serialize
--HG-- extra : convert_revision : svn%3Aacbfec75-9323-0410-a652-858a13e371e0/trunk%401273
1 parent ad2869b commit 6cd3237

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

src/html5lib/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,6 @@
1313
"""
1414
from html5parser import HTMLParser, parse
1515
from treebuilders import getTreeBuilder
16+
from serializer import serialize
1617

1718
from liberalxmlparser import XMLParser, XHTMLParser

src/html5lib/serializer/__init__.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
11

2+
from html5lib import treewalkers
3+
24
from htmlserializer import HTMLSerializer
35
from xhtmlserializer import XHTMLSerializer
6+
7+
def serialize(input, tree="simpletree", format="html", encoding=None,
8+
**serializer_opts):
9+
# XXX: Should we cache this?
10+
walker = treewalkers.getTreeWalker(tree)
11+
if format == "html":
12+
s = HTMLSerializer(**serializer_opts)
13+
elif format == "xhtml":
14+
s = XHTMLSerializer(**serializer_opts)
15+
else:
16+
raise ValueError, "type must be either html or xhtml"
17+
return s.render(walker(input), encoding)

0 commit comments

Comments
 (0)
0