WARNING: Security researches have found several poisoned packages on PyPI, including a package named
urllib, which will 'phone home' when installed. If you usedpip install urllibsome time after June 2017, remove that package as soon as possible.
You can't, and you don't need to.
urllib2 is the name of the library included in Python 2. You can use the urllib.request library included with Python 3, instead. The urllib.request library works the same way urllib2 works in Python 2. Because it is already included you don't need to install it.
If you are following a tutorial that tells you to use urllib2 then you'll find you'll run into more issues. Your tutorial was written for Python 2, not Python 3. Find a different tutorial, or install Python 2.7 and continue your tutorial on that version. You'll find urllib2 comes with that version.
Alternatively, install the requests library for a higher-level and easier to use API. It'll work on both Python 2 and 3.
WARNING: Security researches have found several poisoned packages on PyPI, including a package named
urllib, which will 'phone home' when installed. If you usedpip install urllibsome time after June 2017, remove that package as soon as possible.
You can't, and you don't need to.
urllib2 is the name of the library included in Python 2. You can use the urllib.request library included with Python 3, instead. The urllib.request library works the same way urllib2 works in Python 2. Because it is already included you don't need to install it.
If you are following a tutorial that tells you to use urllib2 then you'll find you'll run into more issues. Your tutorial was written for Python 2, not Python 3. Find a different tutorial, or install Python 2.7 and continue your tutorial on that version. You'll find urllib2 comes with that version.
Alternatively, install the requests library for a higher-level and easier to use API. It'll work on both Python 2 and 3.
In Python 3,
urllib2was replaced by two in-built modules namedurllib.requestandurllib.error
Adapted from source
So replace this:
import urllib2
With this:
import urllib.request as urllib2
Videos
As stated in the urllib2 documentation:
The
urllib2module has been split across several modules in Python 3 namedurllib.requestandurllib.error. The2to3tool will automatically adapt imports when converting your sources to Python 3.
So you should instead be saying
from urllib.request import urlopen
html = urlopen("http://www.google.com/").read()
print(html)
Your current, now-edited code sample is incorrect because you are saying urllib.urlopen("http://www.google.com/") instead of just urlopen("http://www.google.com/").
For a script working with Python 2 (tested versions 2.7.3 and 2.6.8) and Python 3 (3.2.3 and 3.3.2+) try:
#! /usr/bin/env python
try:
# For Python 3.0 and later
from urllib.request import urlopen
except ImportError:
# Fall back to Python 2's urllib2
from urllib2 import urlopen
html = urlopen("http://www.google.com/")
print(html.read())