У меня есть следующий фрагмент кода в приложении GAE - там очень мало приложение, но этоHttpConnection .getresponse() выдает ошибку неуловимой в моем приложении GAE
class Check(webapp.RequestHandler):
def get(self):
sites = [
[1, 0, 'the google', 'www.google.com', '555-0123']
]
for site in sites:
try:
print "checking " + site[3] + "\r\n"
conn = httplib.HTTPConnection(site[3])
conn.request("GET", "/")
r1 = conn.getresponse()
print r1.status + "\r\n"
except: # catch *all* exceptions
e = sys.exc_info()[0]
print e
Это дает мне ответ :
Error: Server Error
The server encountered an error and could not complete your request.
Please try again in 30 seconds.
Если я закомментируйте строку print r1.status + "\r\n"
метод выполняется только штрафом. Должно ли except:
поймать это исключение для меня?
Что еще более важно, почему это бросает исключение в первую очередь?
BTW, не значит 'сопп = httplib.HTTPConnection (сайт)' (или 'сопп = httplib.HTTPConnection (сайты [3])') вместо 'сопп = httplib.HTTPConnection (сайт [3 ]) '? –
нет, сайт [3] является третьим пунктом на сайте. это 2-й массив. 'для сайта в сайтах:' – roryok
'для сайта в сайтах' делает' site' a s строкой, поэтому 'site [3]' является четвертым символом в этой строке 'site'. –