Python urllib urlopen not working

后端 未结 8 1095
甜味超标
甜味超标 2021-01-04 07:29

I am just trying to fetch data from a live web by using the urllib module, so I wrote a simple example

Here is my code:

import urllib

sock = urllib         


        
相关标签:
8条回答
  • 2021-01-04 07:38

    I just queried the same question which is now over 5 years old.

    Please note that the URL given is also old, so i substituted the python welcome page.

    We can use the requests module in python 3.

    I use python 3 and the solution is below:

    import requests
    
    r = requests.get('https://www.python.org/')
    t = r.text
    
    print(t)
    

    This works and is clean.

    0 讨论(0)
  • 2021-01-04 07:43

    In Python3 you can use urllib or urllib3

    urllib:

    import urllib.request
    with urllib.request.urlopen('http://docs.python.org') as response:
        htmlSource = response.read()
    

    urllib3:

    import urllib3
    http = urllib3.PoolManager()
    r = http.request('GET', 'http://docs.python.org')
    htmlSource = r.data
    

    More details could be found in the urllib or python documentation.

    0 讨论(0)
  • 2021-01-04 07:43

    Use this import cv2 import numpy as np import urllib //import urllib using pip import requests // import requests using pipenter code here url = "write your url" while True: imgresp = urllib.request.urlopen(url) imgnp = np.array(bytearray(imgresp.read()),dtype=np.uint8) img = cv2.imdecode(imgnp,-1) cv2.imshow("test",img) cv2.waitKey('q')

    0 讨论(0)
  • 2021-01-04 07:49

    This is what i use to get data from urls, its nice because you could save the file at the same time if you need it:

    import urllib
    
    result = urllib.urlretrieve("http://diveintopython.org/")
    
    print open(result[0]).read()
    

    output:

    '<!DOCTYPE html><body style="padding:0; margin:0;"><iframe src="http://mcc.godaddy.com/park/pKMcpaMuM2WwoTq1LzRhLzI0" style="visibility: visible;height: 2000px;" allowtransparency="true" marginheight="0" marginwidth="0" frameborder="0" scrolling="no" width="100%"></iframe></body></html>'
    

    Edit: urlretrieve works in python 2 and 3

    0 讨论(0)
  • 2021-01-04 07:56

    You are reading the wrong documentation or the wrong Python interpreter version. You tried to use the Python 3 library in Python 2.

    Use:

    import urllib2
    
    sock = urllib2.urlopen("http://diveintopython.org/") 
    htmlSource = sock.read()                            
    sock.close()                                        
    print htmlSource
    

    The Python 2 urllib2 library was replaced by urllib.request in Python 3.

    0 讨论(0)
  • 2021-01-04 07:57

    Make sure you import requests from urllib, then try this format, it worked for me:

    from urllib import request
    urllib.request.urlopen( )
    
    0 讨论(0)
提交回复
热议问题