Server: appserver-7f0f8755-nginx-15961cad18524ec5a9db05f2a6a7e440
Current directory: /usr/lib/python2.7
Software: nginx/1.27.5
Shell Command
Create a new file
Upload file
File: urlparse.py
"""Parse (absolute and relative) URLs. urlparse module is based upon the following RFC specifications. RFC 3986 (STD66): "Uniform Resource Identifiers" by T. Berners-Lee, R. Fielding and L. Masinter, January 2005. RFC 2732 : "Format for Literal IPv6 Addresses in URL's by R.Hinden, B.Carpenter and L.Masinter, December 1999. RFC 2396: "Uniform Resource Identifiers (URI)": Generic Syntax by T. Berners-Lee, R. Fielding, and L. Masinter, August 1998. RFC 2368: "The mailto URL scheme", by P.Hoffman , L Masinter, J. Zwinski, July 1998. RFC 1808: "Relative Uniform Resource Locators", by R. Fielding, UC Irvine, June 1995. RFC 1738: "Uniform Resource Locators (URL)" by T. Berners-Lee, L. Masinter, M. McCahill, December 1994 RFC 3986 is considered the current standard and any future changes to urlparse module should conform with it. The urlparse module is currently not entirely compliant with this RFC due to defacto scenarios for parsing, and for backward compatibility purposes, some parsing quirks from older RFCs are retained. The testcases in test_urlparse.py provides a good indicator of parsing behavior. """ import re __all__ = ["urlparse", "urlunparse", "urljoin", "urldefrag", "urlsplit", "urlunsplit", "parse_qs", "parse_qsl"] # A classification of schemes ('' means apply by default) uses_relative = ['ftp', 'http', 'gopher', 'nntp', 'imap', 'wais', 'file', 'https', 'shttp', 'mms', 'prospero', 'rtsp', 'rtspu', '', 'sftp', 'svn', 'svn+ssh'] uses_netloc = ['ftp', 'http', 'gopher', 'nntp', 'telnet', 'imap', 'wais', 'file', 'mms', 'https', 'shttp', 'snews', 'prospero', 'rtsp', 'rtspu', 'rsync', '', 'svn', 'svn+ssh', 'sftp','nfs','git', 'git+ssh'] uses_params = ['ftp', 'hdl', 'prospero', 'http', 'imap', 'https', 'shttp', 'rtsp', 'rtspu', 'sip', 'sips', 'mms', '', 'sftp', 'tel'] # These are not actually used anymore, but should stay for backwards # compatibility. (They are undocumented, but have a public-looking name.) non_hierarchical = ['gopher', 'hdl', 'mailto', 'news', 'telnet', 'wais', 'imap', 'snews', 'sip', 'sips'] uses_query = ['http', 'wais', 'imap', 'https', 'shttp', 'mms', 'gopher', 'rtsp', 'rtspu', 'sip', 'sips', ''] uses_fragment = ['ftp', 'hdl', 'http', 'gopher', 'news', 'nntp', 'wais', 'https', 'shttp', 'snews', 'file', 'prospero', ''] # Characters valid in scheme names scheme_chars = ('abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' '0123456789' '+-.') MAX_CACHE_SIZE = 20 _parse_cache = {} def clear_cache(): """Clear the parse cache.""" _parse_cache.clear() class ResultMixin(object): """Shared methods for the parsed result objects.""" @property def username(self): netloc = self.netloc if "@" in netloc: userinfo = netloc.rsplit("@", 1)[0] if ":" in userinfo: userinfo = userinfo.split(":", 1)[0] return userinfo return None @property def password(self): netloc = self.netloc if "@" in netloc: userinfo = netloc.rsplit("@", 1)[0] if ":" in userinfo: return userinfo.split(":", 1)[1] return None @property def hostname(self): netloc = self.netloc.split('@')[-1] if '[' in netloc and ']' in netloc: return netloc.split(']')[0][1:].lower() elif ':' in netloc: return netloc.split(':')[0].lower() elif netloc == '': return None else: return netloc.lower() @property def port(self): netloc = self.netloc.split('@')[-1].split(']')[-1] if ':' in netloc: port = netloc.split(':')[1] if port: port = int(port, 10) # verify legal port if (0 <= port <= 65535): return port return None from collections import namedtuple class SplitResult(namedtuple('SplitResult', 'scheme netloc path query fragment'), ResultMixin): __slots__ = () def geturl(self): return urlunsplit(self) class ParseResult(namedtuple('ParseResult', 'scheme netloc path params query fragment'), ResultMixin): __slots__ = () def geturl(self): return urlunparse(self) def urlparse(url, scheme='', allow_fragments=True): """Parse a URL into 6 components:
://
/
;
?
#
Return a 6-tuple: (scheme, netloc, path, params, query, fragment). Note that we don't break the components up in smaller bits (e.g. netloc is a single string) and we don't expand % escapes.""" tuple = urlsplit(url, scheme, allow_fragments) scheme, netloc, url, query, fragment = tuple if scheme in uses_params and ';' in url: url, params = _splitparams(url) else: params = '' return ParseResult(scheme, netloc, url, params, query, fragment) def _splitparams(url): if '/' in url: i = url.find(';', url.rfind('/')) if i < 0: return url, '' else: i = url.find(';') return url[:i], url[i+1:] def _splitnetloc(url, start=0): delim = len(url) # position of end of domain part of url, default is end for c in '/?#': # look for delimiters; the order is NOT important wdelim = url.find(c, start) # find first of this delim if wdelim >= 0: # if found delim = min(delim, wdelim) # use earliest delim position return url[start:delim], url[delim:] # return (domain, rest) def urlsplit(url, scheme='', allow_fragments=True): """Parse a URL into 5 components:
://
/
?
#
Return a 5-tuple: (scheme, netloc, path, query, fragment). Note that we don't break the components up in smaller bits (e.g. netloc is a single string) and we don't expand % escapes.""" allow_fragments = bool(allow_fragments) key = url, scheme, allow_fragments, type(url), type(scheme) cached = _parse_cache.get(key, None) if cached: return cached if len(_parse_cache) >= MAX_CACHE_SIZE: # avoid runaway growth clear_cache() netloc = query = fragment = '' i = url.find(':') if i > 0: if url[:i] == 'http': # optimize the common case scheme = url[:i].lower() url = url[i+1:] if url[:2] == '//': netloc, url = _splitnetloc(url, 2) if (('[' in netloc and ']' not in netloc) or (']' in netloc and '[' not in netloc)): raise ValueError("Invalid IPv6 URL") if allow_fragments and '#' in url: url, fragment = url.split('#', 1) if '?' in url: url, query = url.split('?', 1) v = SplitResult(scheme, netloc, url, query, fragment) _parse_cache[key] = v return v for c in url[:i]: if c not in scheme_chars: break else: # make sure "url" is not actually a port number (in which case # "scheme" is really part of the path) rest = url[i+1:] if not rest or any(c not in '0123456789' for c in rest): # not a port number scheme, url = url[:i].lower(), rest if url[:2] == '//': netloc, url = _splitnetloc(url, 2) if (('[' in netloc and ']' not in netloc) or (']' in netloc and '[' not in netloc)): raise ValueError("Invalid IPv6 URL") if allow_fragments and '#' in url: url, fragment = url.split('#', 1) if '?' in url: url, query = url.split('?', 1) v = SplitResult(scheme, netloc, url, query, fragment) _parse_cache[key] = v return v def urlunparse(data): """Put a parsed URL back together again. This may result in a slightly different, but equivalent URL, if the URL that was parsed originally had redundant delimiters, e.g. a ? with an empty query (the draft states that these are equivalent).""" scheme, netloc, url, params, query, fragment = data if params: url = "%s;%s" % (url, params) return urlunsplit((scheme, netloc, url, query, fragment)) def urlunsplit(data): """Combine the elements of a tuple as returned by urlsplit() into a complete URL as a string. The data argument can be any five-item iterable. This may result in a slightly different, but equivalent URL, if the URL that was parsed originally had unnecessary delimiters (for example, a ? with an empty query; the RFC states that these are equivalent).""" scheme, netloc, url, query, fragment = data if netloc or (scheme and scheme in uses_netloc and url[:2] != '//'): if url and url[:1] != '/': url = '/' + url url = '//' + (netloc or '') + url if scheme: url = scheme + ':' + url if query: url = url + '?' + query if fragment: url = url + '#' + fragment return url def urljoin(base, url, allow_fragments=True): """Join a base URL and a possibly relative URL to form an absolute interpretation of the latter.""" if not base: return url if not url: return base bscheme, bnetloc, bpath, bparams, bquery, bfragment = \ urlparse(base, '', allow_fragments) scheme, netloc, path, params, query, fragment = \ urlparse(url, bscheme, allow_fragments) if scheme != bscheme or scheme not in uses_relative: return url if scheme in uses_netloc: if netloc: return urlunparse((scheme, netloc, path, params, query, fragment)) netloc = bnetloc if path[:1] == '/': return urlunparse((scheme, netloc, path, params, query, fragment)) if not path and not params: path = bpath params = bparams if not query: query = bquery return urlunparse((scheme, netloc, path, params, query, fragment)) segments = bpath.split('/')[:-1] + path.split('/') # XXX The stuff below is bogus in various ways... if segments[-1] == '.': segments[-1] = '' while '.' in segments: segments.remove('.') while 1: i = 1 n = len(segments) - 1 while i < n: if (segments[i] == '..' and segments[i-1] not in ('', '..')): del segments[i-1:i+1] break i = i+1 else: break if segments == ['', '..']: segments[-1] = '' elif len(segments) >= 2 and segments[-1] == '..': segments[-2:] = [''] return urlunparse((scheme, netloc, '/'.join(segments), params, query, fragment)) def urldefrag(url): """Removes any existing fragment from URL. Returns a tuple of the defragmented URL and the fragment. If the URL contained no fragments, the second element is the empty string. """ if '#' in url: s, n, p, a, q, frag = urlparse(url) defrag = urlunparse((s, n, p, a, q, '')) return defrag, frag else: return url, '' try: unicode except NameError: def _is_unicode(x): return 0 else: def _is_unicode(x): return isinstance(x, unicode) # unquote method for parse_qs and parse_qsl # Cannot use directly from urllib as it would create a circular reference # because urllib uses urlparse methods (urljoin). If you update this function, # update it also in urllib. This code duplication does not existin in Python3. _hexdig = '0123456789ABCDEFabcdef' _hextochr = dict((a+b, chr(int(a+b,16))) for a in _hexdig for b in _hexdig) _asciire = re.compile('([\x00-\x7f]+)') def unquote(s): """unquote('abc%20def') -> 'abc def'.""" if _is_unicode(s): if '%' not in s: return s bits = _asciire.split(s) res = [bits[0]] append = res.append for i in range(1, len(bits), 2): append(unquote(str(bits[i])).decode('latin1')) append(bits[i + 1]) return ''.join(res) bits = s.split('%') # fastpath if len(bits) == 1: return s res = [bits[0]] append = res.append for item in bits[1:]: try: append(_hextochr[item[:2]]) append(item[2:]) except KeyError: append('%') append(item) return ''.join(res) def parse_qs(qs, keep_blank_values=0, strict_parsing=0): """Parse a query given as a string argument. Arguments: qs: percent-encoded query string to be parsed keep_blank_values: flag indicating whether blank values in percent-encoded queries should be treated as blank strings. A true value indicates that blanks should be retained as blank strings. The default false value indicates that blank values are to be ignored and treated as if they were not included. strict_parsing: flag indicating what to do with parsing errors. If false (the default), errors are silently ignored. If true, errors raise a ValueError exception. """ dict = {} for name, value in parse_qsl(qs, keep_blank_values, strict_parsing): if name in dict: dict[name].append(value) else: dict[name] = [value] return dict def parse_qsl(qs, keep_blank_values=0, strict_parsing=0): """Parse a query given as a string argument. Arguments: qs: percent-encoded query string to be parsed keep_blank_values: flag indicating whether blank values in percent-encoded queries should be treated as blank strings. A true value indicates that blanks should be retained as blank strings. The default false value indicates that blank values are to be ignored and treated as if they were not included. strict_parsing: flag indicating what to do with parsing errors. If false (the default), errors are silently ignored. If true, errors raise a ValueError exception. Returns a list, as G-d intended. """ pairs = [s2 for s1 in qs.split('&') for s2 in s1.split(';')] r = [] for name_value in pairs: if not name_value and not strict_parsing: continue nv = name_value.split('=', 1) if len(nv) != 2: if strict_parsing: raise ValueError, "bad query field: %r" % (name_value,) # Handle case of a control-name with no equal sign if keep_blank_values: nv.append('') else: continue if len(nv[1]) or keep_blank_values: name = unquote(nv[0].replace('+', ' ')) value = unquote(nv[1].replace('+', ' ')) r.append((name, value)) return r
.
442 Items
Change directory
Remove directory
Rename directory
..
72 Items
Change directory
Remove directory
Rename directory
BaseHTTPServer.py
22.21 KB
Edit
Delete
Copy
Move
Remame
BaseHTTPServer.pyc
21.17 KB
Edit
Delete
Copy
Move
Remame
Bastion.py
5.61 KB
Edit
Delete
Copy
Move
Remame
Bastion.pyc
6.47 KB
Edit
Delete
Copy
Move
Remame
CGIHTTPServer.py
12.78 KB
Edit
Delete
Copy
Move
Remame
CGIHTTPServer.pyc
10.73 KB
Edit
Delete
Copy
Move
Remame
ConfigParser.py
27.1 KB
Edit
Delete
Copy
Move
Remame
ConfigParser.pyc
24.51 KB
Edit
Delete
Copy
Move
Remame
Cookie.py
25.92 KB
Edit
Delete
Copy
Move
Remame
Cookie.pyc
22.05 KB
Edit
Delete
Copy
Move
Remame
DocXMLRPCServer.py
10.25 KB
Edit
Delete
Copy
Move
Remame
DocXMLRPCServer.pyc
9.57 KB
Edit
Delete
Copy
Move
Remame
HTMLParser.py
16.73 KB
Edit
Delete
Copy
Move
Remame
HTMLParser.pyc
13.34 KB
Edit
Delete
Copy
Move
Remame
LICENSE.txt
12.47 KB
Edit
Delete
Copy
Move
Remame
MimeWriter.py
6.33 KB
Edit
Delete
Copy
Move
Remame
MimeWriter.pyc
7.17 KB
Edit
Delete
Copy
Move
Remame
Queue.py
8.38 KB
Edit
Delete
Copy
Move
Remame
Queue.pyc
9.15 KB
Edit
Delete
Copy
Move
Remame
SimpleHTTPServer.py
7.81 KB
Edit
Delete
Copy
Move
Remame
SimpleHTTPServer.pyc
7.8 KB
Edit
Delete
Copy
Move
Remame
SimpleXMLRPCServer.py
25.21 KB
Edit
Delete
Copy
Move
Remame
SimpleXMLRPCServer.pyc
22.26 KB
Edit
Delete
Copy
Move
Remame
SocketServer.py
23.24 KB
Edit
Delete
Copy
Move
Remame
SocketServer.pyc
23.39 KB
Edit
Delete
Copy
Move
Remame
StringIO.py
10.41 KB
Edit
Delete
Copy
Move
Remame
StringIO.pyc
11.17 KB
Edit
Delete
Copy
Move
Remame
UserDict.py
6.89 KB
Edit
Delete
Copy
Move
Remame
UserDict.pyc
9.4 KB
Edit
Delete
Copy
Move
Remame
UserList.py
3.56 KB
Edit
Delete
Copy
Move
Remame
UserList.pyc
6.36 KB
Edit
Delete
Copy
Move
Remame
UserString.py
9.46 KB
Edit
Delete
Copy
Move
Remame
UserString.pyc
14.38 KB
Edit
Delete
Copy
Move
Remame
_LWPCookieJar.py
6.4 KB
Edit
Delete
Copy
Move
Remame
_LWPCookieJar.pyc
5.29 KB
Edit
Delete
Copy
Move
Remame
_MozillaCookieJar.py
5.66 KB
Edit
Delete
Copy
Move
Remame
_MozillaCookieJar.pyc
4.35 KB
Edit
Delete
Copy
Move
Remame
__future__.py
4.28 KB
Edit
Delete
Copy
Move
Remame
__future__.pyc
4.11 KB
Edit
Delete
Copy
Move
Remame
__phello__.foo.py
0.06 KB
Edit
Delete
Copy
Move
Remame
__phello__.foo.pyc
0.12 KB
Edit
Delete
Copy
Move
Remame
_abcoll.py
18.18 KB
Edit
Delete
Copy
Move
Remame
_abcoll.pyc
24.88 KB
Edit
Delete
Copy
Move
Remame
_osx_support.py
18.65 KB
Edit
Delete
Copy
Move
Remame
_osx_support.pyc
11.45 KB
Edit
Delete
Copy
Move
Remame
_pyio.py
67.96 KB
Edit
Delete
Copy
Move
Remame
_pyio.pyc
62.82 KB
Edit
Delete
Copy
Move
Remame
_strptime.py
20.24 KB
Edit
Delete
Copy
Move
Remame
_strptime.pyc
14.77 KB
Edit
Delete
Copy
Move
Remame
_sysconfigdata.py
0.12 KB
Edit
Delete
Copy
Move
Remame
_sysconfigdata.pyc
0.27 KB
Edit
Delete
Copy
Move
Remame
_threading_local.py
7.28 KB
Edit
Delete
Copy
Move
Remame
_threading_local.pyc
6.4 KB
Edit
Delete
Copy
Move
Remame
_weakrefset.py
5.77 KB
Edit
Delete
Copy
Move
Remame
_weakrefset.pyc
9.36 KB
Edit
Delete
Copy
Move
Remame
abc.py
6.98 KB
Edit
Delete
Copy
Move
Remame
abc.pyc
5.98 KB
Edit
Delete
Copy
Move
Remame
aifc.py
33.49 KB
Edit
Delete
Copy
Move
Remame
aifc.pyc
29.5 KB
Edit
Delete
Copy
Move
Remame
antigravity.py
0.06 KB
Edit
Delete
Copy
Move
Remame
antigravity.pyc
0.2 KB
Edit
Delete
Copy
Move
Remame
anydbm.py
2.6 KB
Edit
Delete
Copy
Move
Remame
anydbm.pyc
2.73 KB
Edit
Delete
Copy
Move
Remame
argparse.egg-info
0.21 KB
Edit
Delete
Copy
Move
Remame
argparse.py
87.04 KB
Edit
Delete
Copy
Move
Remame
argparse.pyc
62.54 KB
Edit
Delete
Copy
Move
Remame
ast.py
11.53 KB
Edit
Delete
Copy
Move
Remame
ast.pyc
12.59 KB
Edit
Delete
Copy
Move
Remame
asynchat.py
11.33 KB
Edit
Delete
Copy
Move
Remame
asynchat.pyc
8.55 KB
Edit
Delete
Copy
Move
Remame
asyncore.py
20.36 KB
Edit
Delete
Copy
Move
Remame
asyncore.pyc
18.28 KB
Edit
Delete
Copy
Move
Remame
atexit.py
1.67 KB
Edit
Delete
Copy
Move
Remame
atexit.pyc
2.14 KB
Edit
Delete
Copy
Move
Remame
audiodev.py
7.42 KB
Edit
Delete
Copy
Move
Remame
audiodev.pyc
8.22 KB
Edit
Delete
Copy
Move
Remame
base64.py
11.53 KB
Edit
Delete
Copy
Move
Remame
base64.pyc
11 KB
Edit
Delete
Copy
Move
Remame
bdb.py
21.21 KB
Edit
Delete
Copy
Move
Remame
bdb.pyc
18.53 KB
Edit
Delete
Copy
Move
Remame
binhex.py
14.35 KB
Edit
Delete
Copy
Move
Remame
binhex.pyc
15 KB
Edit
Delete
Copy
Move
Remame
bisect.py
2.53 KB
Edit
Delete
Copy
Move
Remame
bisect.pyc
2.99 KB
Edit
Delete
Copy
Move
Remame
bsddb
14 Items
Change directory
Remove directory
Rename directory
cProfile.py
6.36 KB
Edit
Delete
Copy
Move
Remame
cProfile.pyc
6.13 KB
Edit
Delete
Copy
Move
Remame
calendar.py
22.84 KB
Edit
Delete
Copy
Move
Remame
calendar.pyc
27.1 KB
Edit
Delete
Copy
Move
Remame
cgi.py
34.01 KB
Edit
Delete
Copy
Move
Remame
cgi.pyc
31.67 KB
Edit
Delete
Copy
Move
Remame
cgitb.py
11.89 KB
Edit
Delete
Copy
Move
Remame
cgitb.pyc
11.85 KB
Edit
Delete
Copy
Move
Remame
chunk.py
5.29 KB
Edit
Delete
Copy
Move
Remame
chunk.pyc
5.45 KB
Edit
Delete
Copy
Move
Remame
cmd.py
14.67 KB
Edit
Delete
Copy
Move
Remame
cmd.pyc
13.67 KB
Edit
Delete
Copy
Move
Remame
code.py
9.95 KB
Edit
Delete
Copy
Move
Remame
code.pyc
10.06 KB
Edit
Delete
Copy
Move
Remame
codecs.py
35.25 KB
Edit
Delete
Copy
Move
Remame
codecs.pyc
35.8 KB
Edit
Delete
Copy
Move
Remame
codeop.py
5.86 KB
Edit
Delete
Copy
Move
Remame
codeop.pyc
6.42 KB
Edit
Delete
Copy
Move
Remame
collections.py
27.15 KB
Edit
Delete
Copy
Move
Remame
collections.pyc
25.45 KB
Edit
Delete
Copy
Move
Remame
colorsys.py
3.6 KB
Edit
Delete
Copy
Move
Remame
colorsys.pyc
3.88 KB
Edit
Delete
Copy
Move
Remame
commands.py
2.49 KB
Edit
Delete
Copy
Move
Remame
commands.pyc
2.4 KB
Edit
Delete
Copy
Move
Remame
compileall.py
7.58 KB
Edit
Delete
Copy
Move
Remame
compileall.pyc
6.84 KB
Edit
Delete
Copy
Move
Remame
compiler
22 Items
Change directory
Remove directory
Rename directory
contextlib.py
4.32 KB
Edit
Delete
Copy
Move
Remame
contextlib.pyc
4.33 KB
Edit
Delete
Copy
Move
Remame
cookielib.py
63.48 KB
Edit
Delete
Copy
Move
Remame
cookielib.pyc
52.98 KB
Edit
Delete
Copy
Move
Remame
copy.py
11.26 KB
Edit
Delete
Copy
Move
Remame
copy.pyc
11.83 KB
Edit
Delete
Copy
Move
Remame
copy_reg.py
6.64 KB
Edit
Delete
Copy
Move
Remame
copy_reg.pyc
4.95 KB
Edit
Delete
Copy
Move
Remame
csv.py
16.32 KB
Edit
Delete
Copy
Move
Remame
csv.pyc
13.14 KB
Edit
Delete
Copy
Move
Remame
ctypes
8 Items
Change directory
Remove directory
Rename directory
curses
12 Items
Change directory
Remove directory
Rename directory
dbhash.py
0.49 KB
Edit
Delete
Copy
Move
Remame
dbhash.pyc
0.7 KB
Edit
Delete
Copy
Move
Remame
decimal.py
216.73 KB
Edit
Delete
Copy
Move
Remame
decimal.pyc
167.62 KB
Edit
Delete
Copy
Move
Remame
difflib.py
80.4 KB
Edit
Delete
Copy
Move
Remame
difflib.pyc
60.34 KB
Edit
Delete
Copy
Move
Remame
dircache.py
1.1 KB
Edit
Delete
Copy
Move
Remame
dircache.pyc
1.53 KB
Edit
Delete
Copy
Move
Remame
dis.py
6.35 KB
Edit
Delete
Copy
Move
Remame
dis.pyc
6.07 KB
Edit
Delete
Copy
Move
Remame
dist-packages
1 Items
Change directory
Remove directory
Rename directory
distutils
58 Items
Change directory
Remove directory
Rename directory
doctest.py
102.75 KB
Edit
Delete
Copy
Move
Remame
doctest.pyc
81.49 KB
Edit
Delete
Copy
Move
Remame
dumbdbm.py
8.93 KB
Edit
Delete
Copy
Move
Remame
dumbdbm.pyc
6.55 KB
Edit
Delete
Copy
Move
Remame
dummy_thread.py
4.31 KB
Edit
Delete
Copy
Move
Remame
dummy_thread.pyc
5.24 KB
Edit
Delete
Copy
Move
Remame
dummy_threading.py
2.74 KB
Edit
Delete
Copy
Move
Remame
dummy_threading.pyc
1.25 KB
Edit
Delete
Copy
Move
Remame
email
29 Items
Change directory
Remove directory
Rename directory
encodings
240 Items
Change directory
Remove directory
Rename directory
ensurepip
6 Items
Change directory
Remove directory
Rename directory
filecmp.py
9.36 KB
Edit
Delete
Copy
Move
Remame
filecmp.pyc
9.36 KB
Edit
Delete
Copy
Move
Remame
fileinput.py
13.42 KB
Edit
Delete
Copy
Move
Remame
fileinput.pyc
14.1 KB
Edit
Delete
Copy
Move
Remame
fnmatch.py
3.24 KB
Edit
Delete
Copy
Move
Remame
fnmatch.pyc
3.52 KB
Edit
Delete
Copy
Move
Remame
formatter.py
14.56 KB
Edit
Delete
Copy
Move
Remame
formatter.pyc
18.58 KB
Edit
Delete
Copy
Move
Remame
fpformat.py
4.59 KB
Edit
Delete
Copy
Move
Remame
fpformat.pyc
4.55 KB
Edit
Delete
Copy
Move
Remame
fractions.py
21.87 KB
Edit
Delete
Copy
Move
Remame
fractions.pyc
19.17 KB
Edit
Delete
Copy
Move
Remame
ftplib.py
36.87 KB
Edit
Delete
Copy
Move
Remame
ftplib.pyc
33.63 KB
Edit
Delete
Copy
Move
Remame
functools.py
4.37 KB
Edit
Delete
Copy
Move
Remame
functools.pyc
5.86 KB
Edit
Delete
Copy
Move
Remame
genericpath.py
3.13 KB
Edit
Delete
Copy
Move
Remame
genericpath.pyc
3.41 KB
Edit
Delete
Copy
Move
Remame
getopt.py
7.15 KB
Edit
Delete
Copy
Move
Remame
getopt.pyc
6.48 KB
Edit
Delete
Copy
Move
Remame
getpass.py
5.43 KB
Edit
Delete
Copy
Move
Remame
getpass.pyc
4.62 KB
Edit
Delete
Copy
Move
Remame
gettext.py
22.06 KB
Edit
Delete
Copy
Move
Remame
gettext.pyc
17.45 KB
Edit
Delete
Copy
Move
Remame
glob.py
3.04 KB
Edit
Delete
Copy
Move
Remame
glob.pyc
2.86 KB
Edit
Delete
Copy
Move
Remame
gzip.py
18.58 KB
Edit
Delete
Copy
Move
Remame
gzip.pyc
14.78 KB
Edit
Delete
Copy
Move
Remame
hashlib.py
7.66 KB
Edit
Delete
Copy
Move
Remame
hashlib.pyc
6.73 KB
Edit
Delete
Copy
Move
Remame
heapq.py
17.87 KB
Edit
Delete
Copy
Move
Remame
heapq.pyc
14.19 KB
Edit
Delete
Copy
Move
Remame
hmac.py
4.48 KB
Edit
Delete
Copy
Move
Remame
hmac.pyc
4.42 KB
Edit
Delete
Copy
Move
Remame
hotshot
8 Items
Change directory
Remove directory
Rename directory
htmlentitydefs.py
17.63 KB
Edit
Delete
Copy
Move
Remame
htmlentitydefs.pyc
6.22 KB
Edit
Delete
Copy
Move
Remame
htmllib.py
12.57 KB
Edit
Delete
Copy
Move
Remame
htmllib.pyc
19.66 KB
Edit
Delete
Copy
Move
Remame
httplib.py
49.42 KB
Edit
Delete
Copy
Move
Remame
httplib.pyc
35.64 KB
Edit
Delete
Copy
Move
Remame
ihooks.py
18.54 KB
Edit
Delete
Copy
Move
Remame
ihooks.pyc
20.74 KB
Edit
Delete
Copy
Move
Remame
imaplib.py
47.28 KB
Edit
Delete
Copy
Move
Remame
imaplib.pyc
44.07 KB
Edit
Delete
Copy
Move
Remame
imghdr.py
3.46 KB
Edit
Delete
Copy
Move
Remame
imghdr.pyc
4.69 KB
Edit
Delete
Copy
Move
Remame
importlib
2 Items
Change directory
Remove directory
Rename directory
imputil.py
25.16 KB
Edit
Delete
Copy
Move
Remame
imputil.pyc
15.18 KB
Edit
Delete
Copy
Move
Remame
inspect.py
41.62 KB
Edit
Delete
Copy
Move
Remame
inspect.pyc
38.97 KB
Edit
Delete
Copy
Move
Remame
io.py
3.24 KB
Edit
Delete
Copy
Move
Remame
io.pyc
3.5 KB
Edit
Delete
Copy
Move
Remame
json
10 Items
Change directory
Remove directory
Rename directory
keyword.py
1.95 KB
Edit
Delete
Copy
Move
Remame
keyword.pyc
2.05 KB
Edit
Delete
Copy
Move
Remame
lib-dynload
38 Items
Change directory
Remove directory
Rename directory
lib-tk
36 Items
Change directory
Remove directory
Rename directory
lib2to3
26 Items
Change directory
Remove directory
Rename directory
linecache.py
3.93 KB
Edit
Delete
Copy
Move
Remame
linecache.pyc
3.18 KB
Edit
Delete
Copy
Move
Remame
locale.py
97.19 KB
Edit
Delete
Copy
Move
Remame
locale.pyc
53.69 KB
Edit
Delete
Copy
Move
Remame
logging
6 Items
Change directory
Remove directory
Rename directory
macpath.py
6.14 KB
Edit
Delete
Copy
Move
Remame
macpath.pyc
7.46 KB
Edit
Delete
Copy
Move
Remame
macurl2path.py
2.67 KB
Edit
Delete
Copy
Move
Remame
macurl2path.pyc
2.18 KB
Edit
Delete
Copy
Move
Remame
mailbox.py
79.34 KB
Edit
Delete
Copy
Move
Remame
mailbox.pyc
74.49 KB
Edit
Delete
Copy
Move
Remame
mailcap.py
7.25 KB
Edit
Delete
Copy
Move
Remame
mailcap.pyc
6.89 KB
Edit
Delete
Copy
Move
Remame
markupbase.py
14.3 KB
Edit
Delete
Copy
Move
Remame
markupbase.pyc
9.02 KB
Edit
Delete
Copy
Move
Remame
md5.py
0.35 KB
Edit
Delete
Copy
Move
Remame
md5.pyc
0.37 KB
Edit
Delete
Copy
Move
Remame
mhlib.py
32.65 KB
Edit
Delete
Copy
Move
Remame
mhlib.pyc
32.83 KB
Edit
Delete
Copy
Move
Remame
mimetools.py
7 KB
Edit
Delete
Copy
Move
Remame
mimetools.pyc
7.97 KB
Edit
Delete
Copy
Move
Remame
mimetypes.py
20.45 KB
Edit
Delete
Copy
Move
Remame
mimetypes.pyc
17.96 KB
Edit
Delete
Copy
Move
Remame
mimify.py
14.67 KB
Edit
Delete
Copy
Move
Remame
mimify.pyc
11.69 KB
Edit
Delete
Copy
Move
Remame
modulefinder.py
23.89 KB
Edit
Delete
Copy
Move
Remame
modulefinder.pyc
18.61 KB
Edit
Delete
Copy
Move
Remame
multifile.py
4.71 KB
Edit
Delete
Copy
Move
Remame
multifile.pyc
5.26 KB
Edit
Delete
Copy
Move
Remame
multiprocessing
25 Items
Change directory
Remove directory
Rename directory
mutex.py
1.83 KB
Edit
Delete
Copy
Move
Remame
mutex.pyc
2.44 KB
Edit
Delete
Copy
Move
Remame
netrc.py
5.73 KB
Edit
Delete
Copy
Move
Remame
netrc.pyc
4.54 KB
Edit
Delete
Copy
Move
Remame
new.py
0.6 KB
Edit
Delete
Copy
Move
Remame
new.pyc
0.84 KB
Edit
Delete
Copy
Move
Remame
nntplib.py
20.97 KB
Edit
Delete
Copy
Move
Remame
nntplib.pyc
20.46 KB
Edit
Delete
Copy
Move
Remame
ntpath.py
18.97 KB
Edit
Delete
Copy
Move
Remame
ntpath.pyc
12.78 KB
Edit
Delete
Copy
Move
Remame
nturl2path.py
2.36 KB
Edit
Delete
Copy
Move
Remame
nturl2path.pyc
1.77 KB
Edit
Delete
Copy
Move
Remame
numbers.py
10.08 KB
Edit
Delete
Copy
Move
Remame
numbers.pyc
13.56 KB
Edit
Delete
Copy
Move
Remame
opcode.py
5.35 KB
Edit
Delete
Copy
Move
Remame
opcode.pyc
5.99 KB
Edit
Delete
Copy
Move
Remame
optparse.py
59.77 KB
Edit
Delete
Copy
Move
Remame
optparse.pyc
52.36 KB
Edit
Delete
Copy
Move
Remame
os.py
25.3 KB
Edit
Delete
Copy
Move
Remame
os.pyc
24.98 KB
Edit
Delete
Copy
Move
Remame
os2emxpath.py
4.53 KB
Edit
Delete
Copy
Move
Remame
os2emxpath.pyc
4.4 KB
Edit
Delete
Copy
Move
Remame
pdb.doc
7.73 KB
Edit
Delete
Copy
Move
Remame
pdb.py
45.02 KB
Edit
Delete
Copy
Move
Remame
pdb.pyc
42.42 KB
Edit
Delete
Copy
Move
Remame
pickle.py
44.42 KB
Edit
Delete
Copy
Move
Remame
pickle.pyc
37.45 KB
Edit
Delete
Copy
Move
Remame
pickletools.py
72.79 KB
Edit
Delete
Copy
Move
Remame
pickletools.pyc
55.64 KB
Edit
Delete
Copy
Move
Remame
pipes.py
9.36 KB
Edit
Delete
Copy
Move
Remame
pipes.pyc
9.06 KB
Edit
Delete
Copy
Move
Remame
pkgutil.py
19.87 KB
Edit
Delete
Copy
Move
Remame
pkgutil.pyc
18.42 KB
Edit
Delete
Copy
Move
Remame
plat-x86_64-linux-gnu
10 Items
Change directory
Remove directory
Rename directory
platform.py
51.38 KB
Edit
Delete
Copy
Move
Remame
platform.pyc
36.84 KB
Edit
Delete
Copy
Move
Remame
plistlib.py
14.83 KB
Edit
Delete
Copy
Move
Remame
plistlib.pyc
18.67 KB
Edit
Delete
Copy
Move
Remame
popen2.py
8.22 KB
Edit
Delete
Copy
Move
Remame
popen2.pyc
8.78 KB
Edit
Delete
Copy
Move
Remame
poplib.py
12.52 KB
Edit
Delete
Copy
Move
Remame
poplib.pyc
12.97 KB
Edit
Delete
Copy
Move
Remame
posixfile.py
7.82 KB
Edit
Delete
Copy
Move
Remame
posixfile.pyc
7.45 KB
Edit
Delete
Copy
Move
Remame
posixpath.py
13.61 KB
Edit
Delete
Copy
Move
Remame
posixpath.pyc
11.12 KB
Edit
Delete
Copy
Move
Remame
pprint.py
11.5 KB
Edit
Delete
Copy
Move
Remame
pprint.pyc
9.92 KB
Edit
Delete
Copy
Move
Remame
profile.py
22.25 KB
Edit
Delete
Copy
Move
Remame
profile.pyc
15.99 KB
Edit
Delete
Copy
Move
Remame
pstats.py
26.09 KB
Edit
Delete
Copy
Move
Remame
pstats.pyc
24.31 KB
Edit
Delete
Copy
Move
Remame
pty.py
4.94 KB
Edit
Delete
Copy
Move
Remame
pty.pyc
4.83 KB
Edit
Delete
Copy
Move
Remame
py_compile.py
6.14 KB
Edit
Delete
Copy
Move
Remame
py_compile.pyc
6.46 KB
Edit
Delete
Copy
Move
Remame
pyclbr.py
13.07 KB
Edit
Delete
Copy
Move
Remame
pyclbr.pyc
9.4 KB
Edit
Delete
Copy
Move
Remame
pydoc.py
93.56 KB
Edit
Delete
Copy
Move
Remame
pydoc.pyc
89.91 KB
Edit
Delete
Copy
Move
Remame
pydoc_data
4 Items
Change directory
Remove directory
Rename directory
quopri.py
6.8 KB
Edit
Delete
Copy
Move
Remame
quopri.pyc
6.4 KB
Edit
Delete
Copy
Move
Remame
random.py
31.57 KB
Edit
Delete
Copy
Move
Remame
random.pyc
24.89 KB
Edit
Delete
Copy
Move
Remame
re.py
13.11 KB
Edit
Delete
Copy
Move
Remame
re.pyc
13.06 KB
Edit
Delete
Copy
Move
Remame
repr.py
4.2 KB
Edit
Delete
Copy
Move
Remame
repr.pyc
5.23 KB
Edit
Delete
Copy
Move
Remame
rexec.py
19.68 KB
Edit
Delete
Copy
Move
Remame
rexec.pyc
23.13 KB
Edit
Delete
Copy
Move
Remame
rfc822.py
32.76 KB
Edit
Delete
Copy
Move
Remame
rfc822.pyc
30.95 KB
Edit
Delete
Copy
Move
Remame
rlcompleter.py
5.85 KB
Edit
Delete
Copy
Move
Remame
rlcompleter.pyc
5.92 KB
Edit
Delete
Copy
Move
Remame
robotparser.py
7.41 KB
Edit
Delete
Copy
Move
Remame
robotparser.pyc
7.73 KB
Edit
Delete
Copy
Move
Remame
runpy.py
10.82 KB
Edit
Delete
Copy
Move
Remame
runpy.pyc
8.56 KB
Edit
Delete
Copy
Move
Remame
sched.py
4.97 KB
Edit
Delete
Copy
Move
Remame
sched.pyc
4.86 KB
Edit
Delete
Copy
Move
Remame
sets.py
18.6 KB
Edit
Delete
Copy
Move
Remame
sets.pyc
16.39 KB
Edit
Delete
Copy
Move
Remame
sgmllib.py
17.46 KB
Edit
Delete
Copy
Move
Remame
sgmllib.pyc
14.98 KB
Edit
Delete
Copy
Move
Remame
sha.py
0.38 KB
Edit
Delete
Copy
Move
Remame
sha.pyc
0.41 KB
Edit
Delete
Copy
Move
Remame
shelve.py
7.99 KB
Edit
Delete
Copy
Move
Remame
shelve.pyc
9.96 KB
Edit
Delete
Copy
Move
Remame
shlex.py
10.9 KB
Edit
Delete
Copy
Move
Remame
shlex.pyc
7.36 KB
Edit
Delete
Copy
Move
Remame
shutil.py
18.63 KB
Edit
Delete
Copy
Move
Remame
shutil.pyc
18.12 KB
Edit
Delete
Copy
Move
Remame
site.py
19.48 KB
Edit
Delete
Copy
Move
Remame
site.pyc
19.08 KB
Edit
Delete
Copy
Move
Remame
sitecustomize.py
0.15 KB
Edit
Delete
Copy
Move
Remame
sitecustomize.pyc
0.23 KB
Edit
Delete
Copy
Move
Remame
smtpd.py
18.11 KB
Edit
Delete
Copy
Move
Remame
smtpd.pyc
15.45 KB
Edit
Delete
Copy
Move
Remame
smtplib.py
31.35 KB
Edit
Delete
Copy
Move
Remame
smtplib.pyc
29.47 KB
Edit
Delete
Copy
Move
Remame
sndhdr.py
5.83 KB
Edit
Delete
Copy
Move
Remame
sndhdr.pyc
7.16 KB
Edit
Delete
Copy
Move
Remame
socket.py
20.13 KB
Edit
Delete
Copy
Move
Remame
socket.pyc
15.71 KB
Edit
Delete
Copy
Move
Remame
sqlite3
6 Items
Change directory
Remove directory
Rename directory
sre.py
0.38 KB
Edit
Delete
Copy
Move
Remame
sre.pyc
0.5 KB
Edit
Delete
Copy
Move
Remame
sre_compile.py
19.35 KB
Edit
Delete
Copy
Move
Remame
sre_compile.pyc
12.24 KB
Edit
Delete
Copy
Move
Remame
sre_constants.py
7.03 KB
Edit
Delete
Copy
Move
Remame
sre_constants.pyc
6.04 KB
Edit
Delete
Copy
Move
Remame
sre_parse.py
28.23 KB
Edit
Delete
Copy
Move
Remame
sre_parse.pyc
19.48 KB
Edit
Delete
Copy
Move
Remame
ssl.py
36.92 KB
Edit
Delete
Copy
Move
Remame
ssl.pyc
31.47 KB
Edit
Delete
Copy
Move
Remame
stat.py
1.8 KB
Edit
Delete
Copy
Move
Remame
stat.pyc
2.67 KB
Edit
Delete
Copy
Move
Remame
statvfs.py
0.88 KB
Edit
Delete
Copy
Move
Remame
statvfs.pyc
0.6 KB
Edit
Delete
Copy
Move
Remame
string.py
21.04 KB
Edit
Delete
Copy
Move
Remame
string.pyc
19.88 KB
Edit
Delete
Copy
Move
Remame
stringold.py
12.16 KB
Edit
Delete
Copy
Move
Remame
stringold.pyc
12.2 KB
Edit
Delete
Copy
Move
Remame
stringprep.py
13.21 KB
Edit
Delete
Copy
Move
Remame
stringprep.pyc
14.11 KB
Edit
Delete
Copy
Move
Remame
struct.py
0.08 KB
Edit
Delete
Copy
Move
Remame
struct.pyc
0.23 KB
Edit
Delete
Copy
Move
Remame
subprocess.py
48.26 KB
Edit
Delete
Copy
Move
Remame
subprocess.pyc
30.8 KB
Edit
Delete
Copy
Move
Remame
sunau.py
16.82 KB
Edit
Delete
Copy
Move
Remame
sunau.pyc
17.87 KB
Edit
Delete
Copy
Move
Remame
sunaudio.py
1.37 KB
Edit
Delete
Copy
Move
Remame
sunaudio.pyc
1.93 KB
Edit
Delete
Copy
Move
Remame
symbol.py
2.01 KB
Edit
Delete
Copy
Move
Remame
symbol.pyc
2.95 KB
Edit
Delete
Copy
Move
Remame
symtable.py
7.26 KB
Edit
Delete
Copy
Move
Remame
symtable.pyc
11.41 KB
Edit
Delete
Copy
Move
Remame
sysconfig.py
24.61 KB
Edit
Delete
Copy
Move
Remame
sysconfig.pyc
18.19 KB
Edit
Delete
Copy
Move
Remame
tabnanny.py
11.07 KB
Edit
Delete
Copy
Move
Remame
tabnanny.pyc
8.01 KB
Edit
Delete
Copy
Move
Remame
tarfile.py
88.45 KB
Edit
Delete
Copy
Move
Remame
tarfile.pyc
74.02 KB
Edit
Delete
Copy
Move
Remame
telnetlib.py
26.41 KB
Edit
Delete
Copy
Move
Remame
telnetlib.pyc
22.54 KB
Edit
Delete
Copy
Move
Remame
tempfile.py
19.09 KB
Edit
Delete
Copy
Move
Remame
tempfile.pyc
19.76 KB
Edit
Delete
Copy
Move
Remame
test
8 Items
Change directory
Remove directory
Rename directory
textwrap.py
16.81 KB
Edit
Delete
Copy
Move
Remame
textwrap.pyc
11.72 KB
Edit
Delete
Copy
Move
Remame
this.py
0.98 KB
Edit
Delete
Copy
Move
Remame
this.pyc
1.19 KB
Edit
Delete
Copy
Move
Remame
threading.py
46.03 KB
Edit
Delete
Copy
Move
Remame
threading.pyc
41.44 KB
Edit
Delete
Copy
Move
Remame
timeit.py
12.49 KB
Edit
Delete
Copy
Move
Remame
timeit.pyc
11.87 KB
Edit
Delete
Copy
Move
Remame
toaiff.py
3.07 KB
Edit
Delete
Copy
Move
Remame
toaiff.pyc
3.03 KB
Edit
Delete
Copy
Move
Remame
token.py
2.85 KB
Edit
Delete
Copy
Move
Remame
token.pyc
3.72 KB
Edit
Delete
Copy
Move
Remame
tokenize.py
17.07 KB
Edit
Delete
Copy
Move
Remame
tokenize.pyc
14.13 KB
Edit
Delete
Copy
Move
Remame
trace.py
29.19 KB
Edit
Delete
Copy
Move
Remame
trace.pyc
22.19 KB
Edit
Delete
Copy
Move
Remame
traceback.py
11.02 KB
Edit
Delete
Copy
Move
Remame
traceback.pyc
11.37 KB
Edit
Delete
Copy
Move
Remame
tty.py
0.86 KB
Edit
Delete
Copy
Move
Remame
tty.pyc
1.28 KB
Edit
Delete
Copy
Move
Remame
types.py
2.04 KB
Edit
Delete
Copy
Move
Remame
types.pyc
2.65 KB
Edit
Delete
Copy
Move
Remame
unittest
20 Items
Change directory
Remove directory
Rename directory
urllib.py
58.53 KB
Edit
Delete
Copy
Move
Remame
urllib.pyc
49.71 KB
Edit
Delete
Copy
Move
Remame
urllib2.py
51.28 KB
Edit
Delete
Copy
Move
Remame
urllib2.pyc
45.92 KB
Edit
Delete
Copy
Move
Remame
urlparse.py
14.81 KB
Edit
Delete
Copy
Move
Remame
urlparse.pyc
14.13 KB
Edit
Delete
Copy
Move
Remame
user.py
1.59 KB
Edit
Delete
Copy
Move
Remame
user.pyc
1.68 KB
Edit
Delete
Copy
Move
Remame
uu.py
6.4 KB
Edit
Delete
Copy
Move
Remame
uu.pyc
4.2 KB
Edit
Delete
Copy
Move
Remame
uuid.py
22.08 KB
Edit
Delete
Copy
Move
Remame
uuid.pyc
21.95 KB
Edit
Delete
Copy
Move
Remame
warnings.py
14.4 KB
Edit
Delete
Copy
Move
Remame
warnings.pyc
13.12 KB
Edit
Delete
Copy
Move
Remame
wave.py
18.15 KB
Edit
Delete
Copy
Move
Remame
wave.pyc
19.44 KB
Edit
Delete
Copy
Move
Remame
weakref.py
13.28 KB
Edit
Delete
Copy
Move
Remame
weakref.pyc
15.37 KB
Edit
Delete
Copy
Move
Remame
webbrowser.py
22.25 KB
Edit
Delete
Copy
Move
Remame
webbrowser.pyc
19.26 KB
Edit
Delete
Copy
Move
Remame
whichdb.py
3.3 KB
Edit
Delete
Copy
Move
Remame
whichdb.pyc
2.18 KB
Edit
Delete
Copy
Move
Remame
wsgiref
12 Items
Change directory
Remove directory
Rename directory
wsgiref.egg-info
0.18 KB
Edit
Delete
Copy
Move
Remame
xdrlib.py
5.93 KB
Edit
Delete
Copy
Move
Remame
xdrlib.pyc
9.59 KB
Edit
Delete
Copy
Move
Remame
xml
6 Items
Change directory
Remove directory
Rename directory
xmllib.py
34.05 KB
Edit
Delete
Copy
Move
Remame
xmllib.pyc
26.11 KB
Edit
Delete
Copy
Move
Remame
xmlrpclib.py
50.91 KB
Edit
Delete
Copy
Move
Remame
xmlrpclib.pyc
42.8 KB
Edit
Delete
Copy
Move
Remame
zipfile.py
57.64 KB
Edit
Delete
Copy
Move
Remame
zipfile.pyc
40.52 KB
Edit
Delete
Copy
Move
Remame