Google 검색 API를 사용하여 Google에 검색어를 제공하고 처음 10 개의 결과를 다운로드하는 Python 프로그램을 작성 중입니다. 다음과 같이 파이썬 2.6에서이 작업을 수행 할 수 있었다 :Google 검색 결과를 파이썬 3.1 json으로 변환
query = urllib.parse.urlencode({'q' : 'searchterm','start' : k},doseq=false)
url = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&%s' \
% (query)
results = urllib.urlopen(url)
resultsjson = json.loads(results.read())
betterResults += resultsjson["responseData"]["results"]
구글의 검색 API는 JSON으로 결과를 반환, 그래서 내의 JSON으로 결과를 다운로드하고리스트로 구문 분석을 위의 코드를 사용 (betterResults).
파이썬 3으로 전환했을 때, 프로그램이 예외를 던지기 시작했습니다. 분명히 Python 2.6에서 urlopen()에 의해 반환 된 객체는 json에로드 할 수있는 파일과 유사한 객체입니다. Python 3.1에서 반환 된 객체는 HTTPResponse 객체입니다.이 객체는 json 사양에서 요구하는 read() 메서드를 포함하지만 바이트 객체입니다. 따라서 2.6에있는 정보에 액세스 할 수 없었습니다.
Google에서 반환 한 json에 액세스 할 수있는 방법이 있습니까? 어떻게 파이썬 3에서 결과를 얻을 수 있고 내가 원하는 필드를 선택할 수있을 것인가? json으로 할 수 있었기 때문에?
는 BSG, 대단히 감사