summaryrefslogtreecommitdiffstats
path: root/Doc/howto
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2018-04-16 14:16:20 (GMT)
committerGitHub <noreply@github.com>2018-04-16 14:16:20 (GMT)
commitf20eca7c3fa270e291c8856f0832290ef21135df (patch)
treee26628075cf8b47a9ace412ffbb30b8789f6b32d /Doc/howto
parent986eaa86da7ebac4c71a09db88706eea6d89664c (diff)
downloadcpython-f20eca7c3fa270e291c8856f0832290ef21135df.zip
cpython-f20eca7c3fa270e291c8856f0832290ef21135df.tar.gz
cpython-f20eca7c3fa270e291c8856f0832290ef21135df.tar.bz2
Remove to-be-deprecated urllib.request.urlretrieve function reference (GH-6454)
(cherry picked from commit c89b22175807d64c47b598163b804b5dc005d1bb) Co-authored-by: Andrés Delfino <34587441+andresdelfino@users.noreply.github.com>
Diffstat (limited to 'Doc/howto')
-rw-r--r--Doc/howto/urllib2.rst16
1 files changed, 12 insertions, 4 deletions
diff --git a/Doc/howto/urllib2.rst b/Doc/howto/urllib2.rst
index 204a05a..ef1791c 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