HTTPResponse объект - объект JSON должен быть str, а не «байтами»

Я пытался обновить небольшую библиотеку Python под названиемlibpynexmo работать с Python 3.

Я застрял на этой функции:

def send_request_json(self, request):
    url = request
    req =  urllib.request.Request(url=url)
    req.add_header('Accept', 'application/json')
    try:
        return json.load(urllib.request.urlopen(req))
    except ValueError:
        return False

Когда дело доходит до этого, json отвечает:

TypeError: the JSON object must be str, not 'bytes'

Я читал в нескольких местах, что дляjson.load Вы должны передать объекты (в этом случаеHTTPResponse объект) с.read() прикреплен, но он не работает наHTTPResponse объекты.

Я в растерянности относительно того, куда идти с этим следующим, но, поскольку весь мой 1500-строчный скрипт недавно преобразован в Python 3, я не чувствую необходимости возвращаться к 2.7.

Ответы на вопрос(4)

Ваш ответ на вопрос