[Python-checkins] Remove to-be-deprecated urllib.request.urlretrieve function reference (#6454)

Senthil Kumaran webhook-mailer at python.org
Mon Apr 16 10:03:00 EDT 2018


https://github.com/python/cpython/commit/c89b22175807d64c47b598163b804b5dc005d1bb
commit: c89b22175807d64c47b598163b804b5dc005d1bb
branch: master
author: Andrés Delfino <34587441+andresdelfino at users.noreply.github.com>
committer: Senthil Kumaran <skumaran at gatech.edu>
date: 2018-04-16T07:02:56-07:00
summary:

Remove to-be-deprecated urllib.request.urlretrieve function reference (#6454)

files:
M Doc/howto/urllib2.rst

diff --git a/Doc/howto/urllib2.rst b/Doc/howto/urllib2.rst
index 204a05a61008..ef1791cebec5 100644
--- a/Doc/howto/urllib2.rst
+++ b/Doc/howto/urllib2.rst
@@ -56,12 +56,20 @@ The simplest way to use urllib.request is as follows::
     with urllib.request.urlopen('http://python.org/') as response:
        html = response.read()
 
-If you wish to retrieve a resource via URL and store it in a temporary location,
-you can do so via the :func:`~urllib.request.urlretrieve` function::
+If you wish to retrieve a resource via URL and store it in a temporary
+location, you can do so via the :func:`shutil.copyfileobj` and
+:func:`tempfile.NamedTemporaryFile` functions::
 
+    import shutil
+    import tempfile
     import urllib.request
-    local_filename, headers = urllib.request.urlretrieve('http://python.org/')
-    html = open(local_filename)
+
+    with urllib.request.urlopen('http://python.org/') as response:
+        with tempfile.NamedTemporaryFile(delete=False) as tmp_file:
+            shutil.copyfileobj(response, tmp_file)
+
+    with open(tmp_file.name) as html:
+        pass
 
 Many uses of urllib will be that simple (note that instead of an 'http:' URL we
 could have used a URL starting with 'ftp:', 'file:', etc.).  However, it's the



More information about the Python-checkins mailing list