regarding using urllib3 to replace urllib2

10,333

In python 3 urlopen is part of urllib.request so you have to modify your imports:

from urllib.request import urlopen  

If you want your script to run in python 2 and python 3 you can use:

try:  
    from urllib2 import urlopen
except ImportError:  
    from urllib.request import urlopen
Share:
10,333
user297850
Author by

user297850

Updated on June 04, 2022

Comments

  • user297850
    user297850 almost 2 years

    I was trying to use the following code segment. I am using Python 3, which has urllib3 instead of urllib2. I would like to know how replace this part fh = urllib2.urlopen('http://people.ku.edu/~gbohling/geostats/WGTutorial.zip') data = fh.read() in urllib3. Thanks.

    clusterfile = 'ZoneA.dat'
    if not os.path.isfile(clusterfile):
        fh = urllib2.urlopen('http://people.ku.edu/~gbohling/geostats/WGTutorial.zip')
        data = fh.read()
        fobj = StringIO.StringIO(data)
        myzip = zipfile.ZipFile(fobj,'r')
        myzip.extract(clusterfile)
        fobj.close()
        fh.close()