Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何处理pycurl.error-超时异常?_Python_Python 2.7_For Loop_Curl_Pycurl - Fatal编程技术网

Python 如何处理pycurl.error-超时异常?

Python 如何处理pycurl.error-超时异常?,python,python-2.7,for-loop,curl,pycurl,Python,Python 2.7,For Loop,Curl,Pycurl,我的PyCurl代码的目的是遍历一个IP地址数组,然后打印每个IP地址的响应体 唯一的问题是,一些IP实际上处于脱机状态,当PyCurl无法连接到IP时,它会出错并退出脚本 我想让脚本做的是,如果PyCurl无法连接到IP,请跳到下一个。这应该很简单,但我不确定应该如何重新编写代码以允许此异常 这是我的密码: for x in range (0, 161): url = 'http://' + ips[x] + ':8080/version/' storage = StringIO() c

我的PyCurl代码的目的是遍历一个IP地址数组,然后打印每个IP地址的响应体

唯一的问题是,一些IP实际上处于脱机状态,当PyCurl无法连接到IP时,它会出错并退出脚本

我想让脚本做的是,如果PyCurl无法连接到IP,请跳到下一个。这应该很简单,但我不确定应该如何重新编写代码以允许此异常

这是我的密码:

for x in range (0, 161):

url = 'http://' + ips[x] + ':8080/version/'

storage = StringIO()
c = pycurl.Curl()
c.setopt(c.URL, url)
c.setopt(c.WRITEFUNCTION, storage.write)
#c.perform errors and once it errors, I would like to increment x to skip to the next IP.
c.perform()
c.close()
content = storage.getvalue()
print content
如上所述,c.执行错误,一旦它出错,我想增加x以跳到下一个IP

我怎样才能做到这一点


提前感谢。

执行
引发
pycurl。失败时出现错误
异常。所以您需要在代码中处理这个问题

    try: 
        #do stuff
    except pycurl.error:
        continue

太棒了,非常感谢。还有一个问题;我怎样才能再次进入for循环,因为一旦我处理了错误,我就不知道如何重新进入for循环并从我所在的位置开始。