python错误处理中的图像下载

时间:2015-09-28 02:14:09

标签: python image http error-handling http-status-code-404

我有包含图像的文本文件,我有一个目录,我想保存我的图像。

import os
import urllib
import sys


def normalize(url):
   url = url.split("/")[-1]
   return url.split("\n")[0]

def main():
   out_dir = "Workspace/cnf/img"

    with open('cnf/image_flower.txt') as url_array:
    for url in url_array:
        try:
           urllib.urlretrieve(url, os.path.join(out_dir, normalize(url)))
         except Exception as e :
            print "Exception|",e,"|",url

print("Images Downloaded")

main()的

我正在获取图片。但我面临以下问题 1.我想要捕获所有的http错误代码并将其打印出来,就像找不到的页面和所有类型的错误一样,我的代码无法打印。 我有大约1,00,000个网址。所以我的代码花了很多时间。

请你建议我一个更好的方法来处理它

1 个答案:

答案 0 :(得分:0)

  1. 您的代码似乎很好。但是,您可能希望在“除外”行代码中检查缩进。 Python编程基于缩进,因此可能无效。
  2. try: urllib.urlretrieve(url, os.path.join(out_dir, normalize(url))) except Exception as e : print "Exception: ",e," at ",url

    1. 如果您有大约100,000个网址下载图片,我想有时需要取决于图片的大小。