From 3c8984d2a53cd8377aaa94de992b71ded02aa456 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 20 Feb 2015 18:21:23 +0530 Subject: [PATCH] Allow passing ElementTree to Select() --- src/css_selectors/select.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/css_selectors/select.py b/src/css_selectors/select.py index 0d29d4f906..83589a1ee0 100644 --- a/src/css_selectors/select.py +++ b/src/css_selectors/select.py @@ -125,6 +125,8 @@ class Select(object): } def __init__(self, root, default_lang=None, dispatch_map=None, trace=False): + if hasattr(root, 'getroot'): + root = root.getroot() self.root = root self.dispatch_map = dispatch_map or default_dispatch_map self.invalidate_caches() @@ -568,4 +570,4 @@ if __name__ == '__main__': from pprint import pprint root = etree.fromstring('

') select = Select(root, trace=True) - pprint(list(select('p *:root'))) + pprint(list(select('p')))