使用 urllib 问题从互联网下载文件

download files from the internet using urllib issue

我正在尝试使用 urllib 从网站下载数据文件。

我的密码是

import urllib
url_common = 'http://apps.waterconnect.sa.gov.au/SiteInfo/Data/Site_Data/'
site_list=['4260514','4260512','4260519']
parameter_list=['ecrec','ecday','flowrec','flowcday']
for site in site_list:
    for parameter in parameter_list:        
        try:
            url = url_common+'A'+site+'/'+'a'+site+'_'+parameter+'.zip'
            urllib.urlretrieve(url,'A'+site+'_'+parameter+'.zip')
        except ValueError:
            break

我的问题是有些站点没有所有参数文件。例如,使用我的代码,站点 1 没有 flowcday,但 python 仍然创建没有任何内容的 zip 文件。如果没有数据,我如何才能停止 python 创建这些文件?

非常感谢,

我觉得可能urllib2.urlopen更适合这种情况

import urllib2
from urllib2 import URLError

url_common = 'http://apps.waterconnect.sa.gov.au/SiteInfo/Data/Site_Data/'
site_list=['4260514','4260512','4260519']
parameter_list=['ecrec','ecday','flowrec','flowcday']
for site in site_list:
    for parameter in parameter_list:        
        try:
            url = url_common+'A'+site+'/'+'a'+site+'_'+parameter+'.zip'
            name ='A'+site+'_'+parameter+'.zip'
            req = urllib2.urlopen(url)
            with open(name,'wb') as fh:
                fh.write(req.read())
        except URLError,e:
            if e.code==404:
                print name + '  not found. moving on...'
                pass