Python 3 Get and parse JSON API
Question: How would I parse a json api response with python? I currently have this:

    
    
    import urllib.request
    import json
    
    url = 'https://hacker-news.firebaseio.com/v0/topstories.json?print=pretty'
    
    def response(url):
        with urllib.request.urlopen(url) as response:
            return response.read()
    
    res = response(url)
    print(json.loads(res))
    

I'm getting this error: TypeError: the JSON object must be str, not 'bytes'

What is the pythonic way to deal with json apis?


Answer: I would usually use the `requests` package with the `json` package. The
following code should be suitable for your needs:

    
    
    import requests
    import json
    
    url = 'https://hacker-news.firebaseio.com/v0/topstories.json?print=pretty'
    r = requests.get(url)
    print(json.loads(r.content))
    

**Output**

    
    
    [11008076, 
     11006915, 
     11008202,
     ...., 
     10997668,
     10999859,
     11001695]
    

