API потокового Twitter с Python - управление процессом - PullRequest
0 голосов
/ 02 июня 2011

Я пишу скрипт, который использует Python для использования потокового API Twitter. Моя проблема в том, что я хотел бы собирать твиты только в течение определенного периода времени (т. Е. Твитов на 1 час). Я использовал объект Timer, чтобы остановить процесс и попытаться закрыть соединение, но это работает половину времени. Я также пытался перехватить ошибки KeyboardInterrupt и автоматически закрыть соединение, но, похоже, это тоже не сработало.

Мой вопрос: Есть ли правильный способ работы с потоковым API и как я могу контролировать, когда я хочу запустить и прекратить использование потока? Я думал об использовании дочернего процесса, но не уверен.

Спасибо!

1 Ответ

2 голосов
/ 02 июня 2011

urllib2 является API блокировки и включает буферизацию. Мало что можно сделать, чтобы чисто прервать его read () в данный момент времени.

Вам понадобится более гибкая библиотека HTTP. Вот учебник для Twitter с PyCurl .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...