summaryrefslogtreecommitdiffstats
path: root/Lib/urllib.py
Commit message (Collapse)AuthorAgeFilesLines
* provide simple recovery/escape from apparent redirect recursion. If theSkip Montanaro2001-02-151-1/+17
| | | | | | number of entries into http_error_302 exceeds the value set for the maxtries attribute (which defaults to 10), the recursion is exited by calling the http_error_500 method (or if that is not defined, http_error_default).
* Whitespace normalization.Tim Peters2001-02-091-1/+1
|
* allow first param urlencode to be a sequence of two-element tuples - in thisSkip Montanaro2001-01-281-5/+30
| | | | case, the order of parameters in the output matches the order of the inputs.
* modify urlencode so sequences in the dict are treated as multivaluedSkip Montanaro2001-01-201-6/+36
| | | | parameters. This closes the code part of patch 103314.
* Anonymous SF bug 129288: "The python 2.0 urllib has %%%x as a formatGuido van Rossum2001-01-191-2/+2
| | | | | | | when quoting forbidden characters. There are scripts out there that break with lower case, therefore I guess %%%X should be used." I agree, so am fixing this.
* - Make sure to quote the username and password (SF patch #103236 byGuido van Rossum2001-01-151-3/+3
| | | | | | | dogfort). - Don't drop the data argument when calling open_https() from the authentication error handler.
* Whitespace normalization. Top level of Lib now fixed-point for reindent.py!Tim Peters2001-01-151-13/+13
|
* Fixed bug which caused HTTPS not to work at all with string URLsMoshe Zadka2001-01-081-1/+1
|
* Get rid of string functions, except maketrans() (which is *not*Guido van Rossum2000-12-151-42/+45
| | | | | | | | | obsolete!). Fix a bug in ftpwrapper.retrfile() where somehow ftplib.error_perm was assumed to be a string. (The fix applies str().) Also break some long lines and change the output from test() slightly.
* Convert Unicode strings to byte strings before passing them into specificMartin v. Löwis2000-12-031-14/+25
| | | | protocols. Closes bug #119822.
* Provide a clearer error message when urlopen fails because of anJeremy Hylton2000-10-021-5/+13
| | | | | | | | | | invalid proxy setting. Minor change to call of unknown_url; always pass data argument explicitly since data defaults to None. PEP 42: Add as a feature that urllib handle proxy setting that contain only the host and port of the proxy.
* - Improved handling of win32 proxy settings (addresses bug #114256).Fredrik Lundh2000-09-241-22/+27
| | | | | | | The earlier code assumed "protocol=host;protocol=host;..." or "host", but Windows may also use "protocol=host" (just one entry), as well as "protocol://host". This code needs some more work, so I'll leave the bug open for now.
* Remove "," from the list of always_safe characters. It is a reservedJeremy Hylton2000-09-141-8/+44
| | | | | | | | | | character according to RFC 2396. Add some text to quote doc string that explains the quoting rules better. This closes SF Bug #114427. Add _fast_quote operation that uses a dictionary instead of a list when the standard set of safe characters is used.
* fixes bug #111951Jeremy Hylton2000-08-311-2/+3
| | | | | | applies patch #101369 by Moshe Zadke use explicit list of always safe characters instead of string.letters add test case
* Pass data on to retrieve method.Sjoerd Mullender2000-08-251-1/+1
| | | | Don't people *test* their changes?
* Promote the server version from a local variable to a class variable,Guido van Rossum2000-08-241-3/+4
| | | | | | | | | | so that a subclass can override it. This partly addresses Bug #112634 -- but the documentation is still wrong, since it suggests that you can set self.version *after* calling the base class __init__. In fact it must be done *before*. I'll fix that too.
* Randall Hopper <aa8vb@yahoo.com>>:Fred Drake2000-08-241-3/+3
| | | | Make it easier to use HTTP POST with urlretrieve().
* * added doc strings to urlopen and unquote_plusSkip Montanaro2000-08-221-1/+3
| | | | * fixed type in doc string for quote
* Patch from Paul Schreiber <paul@commerceflow.com>:Fred Drake2000-08-211-6/+19
| | | | | | | | | | | | | | | | | | Patch description ----------------- This addresses four issues: (1) usernames and passwords in urls with special characters are now decoded properly. i.e. http://foo%2C:bar@www.whatever.com/ (2) Basic Auth support has been added to HTTPS, like it was in HTTP. (3) Version 1.92 sent the POSTed data, but did not deal with errors (HTTP responses other than 200) properly. HTTPS now behaves the same way HTTP does. (4) made URL-checking beahve the same way with HTTPS as it does with HTTP (changed == to !=).
* Patch #100873 - Use registry to find proxies for urllib on Win32Mark Hammond2000-07-261-13/+61
| | | | Note that this patch looks worse than it is - an existing function (getproxies() for all platforms other than Win/Mac) has been moved, renamed and indentation changed, but the body of that function is identical. Windows now allows the environment variables to override the registry.
* Spelling fixes supplied by Rob W. W. Hooft. All these are fixes in eitherThomas Wouters2000-07-161-1/+1
| | | | | | | | | | comments, docstrings or error messages. I fixed two minor things in test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't"). There is a minor style issue involved: Guido seems to have preferred English grammar (behaviour, honour) in a couple places. This patch changes that to American, which is the more prominent style in the source. I prefer English myself, so if English is preferred, I'd be happy to supply a patch myself ;)
* Fix bug #314, reported by Craig Allen <cba@mediaone.net>:Fred Drake2000-07-011-1/+1
| | | | | splittype(): Always lower-case the URL scheme; these are supposed to be normalized according to RFC 1738 anyway.
* Comment out an apparent debug printAndrew M. Kuchling2000-06-101-1/+1
|
* Fix a problem reported by Oleg Broytmann, who complains that veryGuido van Rossum2000-05-241-1/+1
| | | | | | | | | | | | often, ftp URLs hang in the final close. Further analysis suggests that this is because the close hook in addclosehook() calls the hook before acually closing the connection. The hook, in this case, waits for the '226 Transfer complete' status from the server on the command socket. However, more and more ftp servers only send this status when the data socket has actually been closed -- causing a deadlock. The fix is simple: in addclosehook.close(), call addbase.close() *before* calling the closehook.
* Fix to previous patch: send the request data when it's providedAndrew M. Kuchling2000-04-241-0/+2
|
* Fixed bug reported by JP Calderone: https:// URL's didn't work.Andrew M. Kuchling2000-04-231-2/+8
| | | | The fix also adds support for POSTing to an https URL
* The third and final doc-string sweep by Ka-Ping Yee.Guido van Rossum2000-02-041-79/+108
| | | | | | | | The attached patches update the standard library so that all modules have docstrings beginning with one-line summaries. A new docstring was added to formatter. The docstring for os.py was updated to mention nt, os2, ce in addition to posix, dos, mac.
* Sjoerd Mullender writes:Guido van Rossum2000-02-011-5/+14
| | | | | | | | | | | | Fixed a TypeError: not enough arguments; expected 4, got 3. When authentication is needed, the default http_error_401 method calls retry_http_basic_auth. The default version of that method expected a data argument which wasn't provided, so now we provide the argument if it was given and we also made the data argument optional. Also changed other calls where data was optional to not pass data if it was not passed to the calling method (in line with other similar occurances).
* OpenSSL support. This is based on patches for a version of SSLeay byGuido van Rossum1999-12-071-5/+57
| | | | | | Brian E Gallew, which were improved and adapted to OpenSSL 0.9.4 by Laszlo Kovacs of HP. Both have kindly given permission to include the patches in the Python distribution. Final formatting by GvR.
* Patches by Michael Reilly to correctly deal with ftp URLs of the formGuido van Rossum1999-08-181-0/+1
| | | | | ftp://user@host//root/path: the double slash in the pathname means to go to the root directory even if the initial directory isn't the root.
* Sjoerd Mullender:Guido van Rossum1999-07-011-1/+1
| | | | | | In splithost, accept empty host part in URLs. This is required for file URLs that can have an empty host part. For such URLs, we should not return the initial 2 slashes as part of the file name.
* Sjoerd Mullender writes:Guido van Rossum1999-06-241-2/+8
| | | | | | | | | | | Urllib makes the URL of the opened file available through the geturl method of the returned object. For local files, this consists of file: plus the name of the file. This results in an invalid URL if the file name was relative. This patch fixes this so that the returned URL is just a relative URL in that case. When the file name is absolute, the URL returned is of the form file:///absolute/path. [I guess that a URL of the form "file:foo.html" is illegal... GvR]
* Updated lagging version#. Also added some comments about how quote()Guido van Rossum1999-06-091-1/+3
| | | | and quote_plus() can be optimized tenfold.
* Hack so that if a 302 or 301 redirect contains a relative URL, theGuido van Rossum1999-03-291-0/+2
| | | | right thing "just happens" (basejoin() with old URL).
* Yet another patch by Sjoerd Mullender:Guido van Rossum1999-03-151-2/+2
| | | | Don't convert URLs to URLs using pathname2url.
* From: Sjoerd MullenderGuido van Rossum1999-03-121-9/+2
| | | | | | The filename to URL conversion didn't properly quote special characters. The URL to filename didn't properly unquote special chatacters.
* open_http also had the 'data is None' test backwards. don't call with theGuido van Rossum1999-03-091-3/+2
| | | | extra argument if data is None.
* http_error had the 'data is None' test backwards. don't call with theJeremy Hylton1999-02-251-4/+3
| | | | extra argument if data is None.
* change indentation from 8 spaces to 4 spacesJeremy Hylton1999-02-251-878/+859
|
* pleasing the tabnannyJeremy Hylton1999-02-251-11/+11
|
* When performing a POST request, i.e. when the second argument toJeremy Hylton1999-02-241-11/+27
| | | | | | | urlopen is used to specify form data, make sure the second argument is threaded through all of the http_error_NNN calls. This allows error handlers like the redirect and authorization handlers to properly re-start the connection.
* As Des Barry points out, we need to call pathname2url(file) in twoGuido van Rossum1999-02-221-2/+2
| | | | calls to addinfourl() in open_file().
* In open_ftp(), check that retrlen is not None before using it in a %d format!Guido van Rossum1999-02-161-1/+1
|
* Sjoerd Mullender:Guido van Rossum1998-12-181-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | File names with "funny" characters get translated wrong by pathname2url (any variety). E.g. the (Unix) file "/ufs/sjoerd/#tmp" gets translated into "/ufs/sjoerd/#tmp" which, when interpreted as a URL is file "/ufs/sjoerd/" with fragment ID "tmp". Here's an easy fix. (An alternative fix would be to change the various implementations of pathname2url and url2pathname to include calls to quote and unquote. [The main problem is with the normal use of URLs: url = url2pathname(file) transmit url url, tag = splittag(url) urlopen(url) ] In addition, this patch fixes some uses of unquote: - the host part of URLs should be unquoted - the file path in the FTP URL should be unquoted before it is split into components. - because of the latter, I removed all unquoting from ftpwrapper, and moved it to the caller, but that is not essential
* Changes by Eric Raymond:Guido van Rossum1998-09-281-14/+32
| | | | | | | | | | | | 1. Generate a correct Content-Length header visible through the info() method if a request to open an FTP URL gets a length in the response to RETR. 2. Take a third argument to urlretrieve() that makes it possible to progress- meter an urlretrieve call (this is what I needed the above change for). See the second patch band below for details. 3. To avoid spurious errors, I commented out the gopher test. The target document no longer exists.
* On the Mac, use Internet Config to find the proxies (Jack Jansen).Guido van Rossum1998-08-061-15/+49
| | | | Also added two XXX comments about lingering thread unsafeness.
* Speed up the implementation of quote().Guido van Rossum1998-07-221-8/+17
| | | | | | | | Fix the implementation of quote_plus(). (It wouldn't treat '+' in the original data right.) Add urlencode(dict) which is handy to create the data for sending a POST request with urlopen().
* Oops! Of course, Tim is right -- when the item is not a hex number,Guido van Rossum1998-06-291-2/+2
| | | | the '%' should be put back in.
* Speed-up unquote(), inspired by post from Daniel Walton.Guido van Rossum1998-06-281-18/+16
|
* Rewrite the (test) main program so that when used as a script, it canGuido van Rossum1998-06-251-5/+29
| | | | retrieve one or more URLs to stdout. Use -t to run the self-test.