diff options
Diffstat (limited to 'youtube_dl/utils.py')
| -rw-r--r-- | youtube_dl/utils.py | 18 | 
1 files changed, 18 insertions, 0 deletions
diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index 82a1daeb9..3e81c308b 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -9,6 +9,7 @@ import io  import json  import locale  import os +import pipes  import platform  import re  import socket @@ -229,6 +230,19 @@ else:                  return f          return None +# On python2.6 the xml.etree.ElementTree.Element methods don't support +# the namespace parameter +def xpath_with_ns(path, ns_map): +    components = [c.split(':') for c in path.split('/')] +    replaced = [] +    for c in components: +        if len(c) == 1: +            replaced.append(c[0]) +        else: +            ns, tag = c +            replaced.append('{%s}%s' % (ns_map[ns], tag)) +    return '/'.join(replaced) +  def htmlentity_transform(matchobj):      """Transforms an HTML entity to a character. @@ -927,3 +941,7 @@ class locked_file(object):      def read(self, *args):          return self.f.read(*args) + + +def shell_quote(args): +    return ' '.join(map(pipes.quote, args))  | 
