从u下载文件时出错

2024-10-03 15:29:09 发布

您现在位置:Python中文网/ 问答频道 /正文

敬上。 当我从一个url(ftp://garner.ucsd.edu/pub/rinex/)下载文件时,我遇到了一个问题,我正在自动下载,但是当他们更改url和name文件的值时,我遇到了麻烦。当我运行脚本时,做了第一次下载,然后错误。。。错在哪里?在

#!/usr/bin/python

import shutil
import urllib
import urllib2
import sys, os
import time, datetime
import numpy as np

def cods(n):
    codes = ['antc', 'areq', 'arev', 'bogt', 'braz', 'brft', 'bue1', 'bue2', 'cfag', 'chpi', \
    'copo', 'cord', 'coyq', 'falk', 'glps', 'iqqe', 'koug', 'kour', 'ispa', 'lpgs', \
    'mgue', 'parc', 'pove', 'qui1', 'qui2', 'recf', 'rio2', 'riop', 'salu', 'sant', \
    'savo', 'sptu', 'ufpr', 'unsa', 'valp']

    return codes[n]

def file_exists(location):
    request = urllib2.Request(location)
    request.get_method = lambda : 'HEAD'

    try:
        response = urllib2.urlopen(request)
        return True

    except IOError:
        return False

if __name__=='__main__':

    days = (datetime.datetime(yy,mm,dd) -datetime.datetime(yy,1,1,0,0,0)).days

    for yy in np.arange(2010, 2015, 1):
        days = (datetime.datetime(yy+1,1,1,0,0,0)-datetime.datetime(yy,1,1,0,0,0)).days
        print 'Total days in '+str(yy)+': '+str(days)

        for dd in np.arange(1, days+1, 1):
            urldir   = 'ftp://garner.ucsd.edu/pub/rinex/'+str('%04d'%yy)+'/'+str('%03d'%dd)+'/'

            for k in np.arange(0, 35, 1): # k is len(codes)
                gpsfile  = cods(k)+str('%03d'%dd)+'0.'+str('%04d'%yy)[2:4]+'d.Z'

                if file_exists(urldir+gpsfile)==True:
                    print 'Downloading '+gpsfile 
                    urllib.urlretrieve(urldir, gpsfile)

        else:
            print 'File no found '+gpsfile[j]  

错误显示

^{pr2}$

Tags: inimportfordatetimereturnrequestnpurllib2