2013-05-23 3 views
0

Я столкнулся с проблемой с 'запросов' модуль python.python просит получить метод get, за которым следует метод json.

У меня есть эти три строки кода:

print '\n\nTrying to fetch Tweets from URL %s' % url 
newTweets = requests.get(url).json() 
print 'Fetched %d tweets from URL: %s' % (len(newTweets), url) 

И как-то выполнение программы получает застрял (программа останавливается) на второй линии. Параметр «url» является действительным URL-адресом для нашего серверного сервера, который служит «действителен» json.

Я только начал испытывать этот вопрос сегодня. В коде нет петель, поэтому нет возможности для бесконечного цикла. Тем не менее, я до сих пор не знаю, что именно происходит внутри 'get' и 'json' методы модуля запросов.

Если у кого есть какие-либо объяснения, ответьте пожалуйста.

+2

Что делать, если вы удалите встраиваемый '.json()' вызов и просто попробуйте сначала сделать «get»? – sberry

+0

Если это только недавно началось, возможно, твиттер или какая-либо часть API, которую вы используете, нарушена. – Aya

+0

@ Ая, но что можно сломать? И почему нет исключительных обработчиков в методах json() и get() для обработки этих исключительных случаев. Более того, нашим стандартным механизмом обмена данными является json, мы полностью абстрагируем твиттер на этом уровне. – VaidAbhishek

ответ

0

Split программа на несколько шагов

newTweets = requests.get(url) 

затем проверить код состояния для все, что вы ожидаете, чтобы вернуться, например:

if newTweets.status_code != 200: 
    # exception handling 

return newTweets.json() 
Смежные вопросы