2013-04-09 78 views
1

据我所知,我可以确保使用互联网的脚本不采取任何行动,除非它通过使用这样的代码连接到网络。防止在python中丢失互联网

import time 
import json 
import urllib 

try: 
    response = urllib.urlopen('http://search.twitter.com/search.json?q=%23monty') 
except IOError: 
    time.sleep(15) 
    continue 
j =json.loads(response.read()) 

我所发现然而,就是当我在剧本这点后关闭我的路由器,脚本可以冻结。重新启动互联网不会解除卡住的脚本。 什么是不粘方法?我需要一个脚本才能够在互联网和串行端口连接暂时丢失的情况下生存下来。

回答

0

这可能与您的请求超时有关(如果我记得的话,默认为套接字超时)。试试这个:

import time 
import json 
import urllib 

try: 
    response = urllib.urlopen('http://search.twitter.com/search.json?q=%23monty', timeout=10) 
except IOError: 
    time.sleep(5) 
    continue 
j =json.loads(response.read()) 

最好的问候,

沙利文

+0

我想你的代码,并没有帮助。对不起,沙利文。它带来了一个错误。 – Hooperstu 2013-04-10 14:41:58