Cómo obtener archivos JSON de gran tamaño utilizando el módulo de solicitudes en Python

Estoy tratando de guardar un archivo JSON grande en una variable usando el módulo de requests , pero solo parte de JSON está convirtiendo en la variable cuando uso lo siguiente:

 r = requests.get(url) r.json() 

Veo que hay formas de guardarlo en trozos cuando se escribe en un archivo. ¿Hay una forma de hacerlo al escribir en una variable?

De acuerdo con los documentos , el uso de ‘con’ y la configuración de la secuencia en Verdadero deben ser lo que necesita.

 with requests.get('http://httpbin.org/get', stream=True) as r: # Do things with the response here. 
 response = requests.get(url, stream=True) with open(path, 'wb') as f: for chunk in response.iter_content(chunk_size=1024): if chunk: # filter out keep-alive new chunks f.write(chunk) response.close() 

O puedes usar el administrador de contexto:

 with requests.get(url, stream=True) as response: with open(path, 'wb') as f: for chunk in response.iter_content(chunk_size=1024): if chunk: # filter out keep-alive new chunks f.write(chunk) 

Actualizar:

Para una variable, es lo mismo, solo usa data += chunk