summaryrefslogtreecommitdiff
path: root/beautifulsoup/builder/lxml_builder.py
diff options
context:
space:
mode:
authorLeonard Richardson <leonard.richardson@canonical.com>2011-02-20 10:39:56 -0500
committerLeonard Richardson <leonard.richardson@canonical.com>2011-02-20 10:39:56 -0500
commit232311a2f682e59078012e5b05e382982862f627 (patch)
tree60bd21949b54bdb5588ecce31a3bb89e40617692 /beautifulsoup/builder/lxml_builder.py
parentae349fd47c627f8166526fed8906811707d2f4b2 (diff)
parentf2532b1d63bd4a4d2be6ad9a4dce5eea03f43e7a (diff)
I couldn't get the XML parser to parse CDATA as CData objects, but at least I documented the current behavior.
Diffstat (limited to 'beautifulsoup/builder/lxml_builder.py')
-rw-r--r--beautifulsoup/builder/lxml_builder.py11
1 files changed, 4 insertions, 7 deletions
diff --git a/beautifulsoup/builder/lxml_builder.py b/beautifulsoup/builder/lxml_builder.py
index e431a62..9f4c0bd 100644
--- a/beautifulsoup/builder/lxml_builder.py
+++ b/beautifulsoup/builder/lxml_builder.py
@@ -11,7 +11,7 @@ class LXMLTreeBuilderForXML(TreeBuilder):
def default_parser(self):
# This can either return a parser object or a class, which
# will be instantiated with default arguments.
- return etree.XMLParser
+ return etree.XMLParser(target=self, strip_cdata=False, recover=True)
def __init__(self, parser=None, empty_element_tags=None):
if empty_element_tags is not None:
@@ -71,10 +71,6 @@ class LXMLTreeBuilderForXML(TreeBuilder):
self.soup.handle_data(content)
self.soup.endData(Comment)
- def test_fragment_to_document(self, fragment):
- """See `TreeBuilder`."""
- return u'<html><body>%s</body></html>' % fragment
-
class LXMLTreeBuilder(HTMLTreeBuilder, LXMLTreeBuilderForXML):
@@ -82,5 +78,6 @@ class LXMLTreeBuilder(HTMLTreeBuilder, LXMLTreeBuilderForXML):
def default_parser(self):
return etree.HTMLParser
- def end(self, name):
- self.soup.handle_endtag(name)
+ def test_fragment_to_document(self, fragment):
+ """See `TreeBuilder`."""
+ return u'<html><body>%s</body></html>' % fragment