2012-01-16 3 views
1

при выполнении скрипта python, который сбрасывает исторические твиты Я примерно через 2 - 3 мин. получите следующую ошибку !!!странная ошибка python 3 мин. после выполнения скрипта Twitter?

Я действительно не знаю, что это означает

и как я мог бы предотвратить это

Я нахожусь вызывающе в моем пределе скорости, потому что перед выполнением каждого цикла выскабливания я проверяю и он возвращается как истинный !!!

спасибо за вашу помощь

Traceback (most recent call last): 
    File "twitter.py", line 13, in <module> 
openurl = urllib.urlopen("https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&contributor_details&include_rts=true&screen_name="+user+"&count=3600") 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 84, in urlopen 
return opener.open(url) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 205, in open 
return getattr(self, name)(url) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 449, in open_https 
return self.http_error(url, fp, errcode, errmsg, headers) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 369, in http_error 
result = method(url, fp, errcode, errmsg, headers) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 691, in http_error_401 
errcode, errmsg, headers) 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 379, in http_error_default 
raise IOError, ('http error', errcode, errmsg, headers) 
IOError: ('http error', 401, 'Unauthorized', <httplib.HTTPMessage instance at 0x1005ca9e0>) 

скрипт работает отлично, но затем через 2-3 мин он всегда влезает ....

+0

Похож ограничение скорости, хотя. Сколько запросов вы выполняете в каждом цикле очистки? – bouke

+0

Я исполняю два! И я заставил сценарий распечатать ограничение скорости, и это было 38! –

ответ

2

Twitter апи имеет 150 запросов в час предел https://dev.twitter.com/docs/rate-limiting Try для запроса более одного твита в одном запросе. Я думаю, что объяснение приходит с 401 ответа попробовать это

try: 
    response = urllib2.urlopen..... 
except urllib2.HTTPError as e: 
    error = e.read() # this will be your error message 
    print error 
Смежные вопросы