0001class QuickTextReader(object):
0002    def __init__(self, text):
0003        self.text = text
0004
0005    def read(self, amount):
0006        t = self.text
0007        self.text = ''
0008        return t
0009
0010def xml_sniff(text):
0011    """Sniff text to see if it looks like XML.
0012    Return 1 if text looks like XML, otherwise return 0.
0013    """
0014    for x in text:
0015        if x in '\t\r\n ':
0016            continue
0017        elif x == '<':
0018            return 1
0019        else:
0020            return 0
0021
0022from urllib import splittype
0023def open_resource(uri, mode='rb'):
0024    """Generic resource opener."""
0025    (scheme, rest) = splittype(uri)
0026    if not scheme or (len(scheme) == 1 and rest.startswith('\\')):
0027        return open(uri, mode)
0028    else:
0029        import urllib2
0030        return urllib2.urlopen(uri)