Python 3에서는 URL에서 json 문서를 요청하고 있습니다.
response = urllib.request.urlopen(request)
response
객체와 파일 - 류의 객체입니다 read
및 readline
방법. 일반적으로 텍스트 모드에서 열린 파일로 JSON 객체를 만들 수 있습니다.
obj = json.load(fp)
내가하고 싶은 것은 :
obj = json.load(response)
그러나 urlopen은 파일 객체를 이진 모드로 반환하므로 작동하지 않습니다.
해결 방법은 물론 :
str_response = response.read().decode('utf-8')
obj = json.loads(str_response)
그러나 이것은 기분이 좋지 않습니다 ...
바이트 파일 객체를 문자열 파일 객체로 변환하는 더 좋은 방법이 있습니까? 또는 인코딩 urlopen
또는 매개 변수가 누락 json.load
되었습니까?