【问题标题】:for loop jump out after first error in python在python中出现第一个错误后for循环跳出
【发布时间】:2020-05-14 14:28:45
【问题描述】:

网站中有一个未知目录,我想保存它的所有文件。我们这里有一个 for 循环,我想检查 500 个链接并下载这 500 个链接之间存在的任何文件。但是,当代码遇到第一个 404 时,它会退出循环。我怎么解决这个问题? 提示:我只知道文件名中有一个模式。它们是 10-15 个字符的数字,例如:“14565434567.jpg”或“12343432128900.png”,这就是我想使用 for 循环的原因。

import urllib.request

   for i in range (1,500):
     print(i)
     bb=str(i)
     print(i)
     url="http://www.example.com/2020/images/{bb}.jpg".format(bb=bb)
     print(i)
     urllib.request.urlretrieve(url, "{bb}.jpg".format(bb=bb))
     print(i)

【问题讨论】:

    标签: python-3.x loops for-loop


    【解决方案1】:

    使用try-except 块:

    import urllib.request
    
       for i in range (1,500):
         print(i)
         bb=str(i)
         print(i)
         try:
             url="http://www.example.com/2020/images/{bb}.jpg".format(bb=bb)
             print(i)
             urllib.request.urlretrieve(url, "{bb}.jpg".format(bb=bb))
             print(i)
         except:
             pass
    

    【讨论】:

    • 除非 OP 只想继续处理 404 错误,否则您的回答对于 OP 的要求是合法的。赞成
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 1970-01-01
    • 2023-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多