[compat] Add compat_xpath

This commit is contained in:
Sergey M․ 2016-03-18 02:51:38 +06:00
parent 0d0e282912
commit 57f7e3c62d

View file

@ -256,6 +256,16 @@ def compat_etree_fromstring(text):
el.text = el.text.decode('utf-8')
return doc
if sys.version_info < (2, 7):
# Here comes the crazy part: In 2.6, if the xpath is a unicode,
# .//node does not match if a node is a direct child of . !
def compat_xpath(xpath):
if isinstance(xpath, compat_str):
xpath = xpath.encode('ascii')
return xpath
else:
compat_xpath = lambda xpath: xpath
try:
from urllib.parse import parse_qs as compat_parse_qs
except ImportError: # Python 2
@ -585,6 +595,7 @@ def compat_itertools_count(start=0, step=1):
'compat_urlparse',
'compat_urlretrieve',
'compat_xml_parse_error',
'compat_xpath',
'shlex_quote',
'subprocess_check_output',
'workaround_optparse_bug9161',