El ejemplo de transmisión de solicitudes no funciona en mi entorno

He estado tratando de consumir la API de transmisión de Twitter mediante Python Requests.

Hay unaejemplo simple en la documentación:

import requests
import json

r = requests.post('https://stream.twitter.com/1/statuses/filter.json',
    data={'track': 'requests'}, auth=('username', 'password'))

for line in r.iter_lines():
    if line: # filter out keep-alive new lines
        print json.loads(line)

Cuando ejecuto esto, la llamada arequests.post() nunca vuelve Experimenté y probé que definitivamente se está conectando a Twitter y recibiendo datos de la API. Sin embargo, en lugar de devolver un objeto de respuesta, simplemente permanece allí consumiendo tantos datos como envía Twitter. A juzgar por el código anterior, esperaríarequests.post() para devolver un objeto de respuesta con una conexión abierta a Twitter que podría continuar recibiendo resultados en tiempo real.

(Para probar que estaba recibiendo datos, me conecté a Twitter utilizando las mismas credenciales en otro shell, con lo cual Twitter cerró la primera conexión y la llamada devolvió el objeto de respuesta.r.content el atributo contenía todos los datos de respaldo recibidos mientras la conexión estaba abierta.)

La documentación no hace mención de ningún otro paso requerido para causarrequests.post Para volver antes de consumir todos los datos suministrados. Otras personas parecen estar utilizando un código similar sin encontrar este problema, por ejemplo,aquí.

Estoy usando:

Python 2.7Ubuntu 11.04Solicitudes 0.14.0

Respuestas a la pregunta(2)

Su respuesta a la pregunta