0

我正在用 Python 编写一个程序,该程序必须发出 http 请求,同时被迫进行直接连接以避免代理。这是我使用的成功管理此代码的代码:

print "INFO: Testing API..."
proxy = urllib2.ProxyHandler({}) 
opener = urllib2.build_opener(proxy)
urllib2.install_opener(opener)
req = urllib2.urlopen('http://maps.googleapis.com/maps/api/geocode/json?address=blahblah&sensor=true')
returneddata = json.loads(req.read())

然后我想在'req'周围添加一个try语句,以处理用户未连接到互联网的情况,我尝试过这样的情况:

try:
   req = urllib2.urlopen('http://maps.googleapis.com/maps/api/geocode/json?address=blahblah&sensor=true')
except urllib2.URLError:
   print "Unable to connect etc etc"

问题在于,这样做总是会引发异常,即使地址完全可以访问并且代码在没有它的情况下也能正常工作。

有任何想法吗?干杯。

4

0 回答 0