view python/open.py @ 630:6e6a2adaa9f6

file modes
author Jeff Hammel <k0scist@gmail.com>
date Thu, 20 Feb 2014 12:11:17 -0800
parents 2025368488ee
children
line wrap: on
line source

def load(resource):
    """
    open a file or URL for reading.  If the passed resource string is not a URL,
    or begins with 'file://', return a ``file``.  Otherwise, return the
    result of urllib2.urlopen()
    """

    # handle file URLs separately due to python stdlib limitations
    if resource.startswith('file://'):
        resource = resource[len('file://'):]

    if not is_url(resource):
        # if no scheme is given, it is a file path
        return file(resource)

    return urllib2.urlopen(resource)