これまでのところ、FTPサイトから必要なファイル名を取得しました。以下のコードを参照してください。FTPフォルダからすべてのファイルをダウンロードする際に「アクセスが拒否されました」というエラーが発生しました
from ftplib import FTP
import os, sys, os.path
def handleDownload(block):
file.write(block)
ddir='U:/Test Folder'
os.chdir(ddir)
ftp = FTP('sidads.colorado.edu')
ftp.login()
print ('Logging in.')
directory = '/pub/DATASETS/NOAA/G02158/unmasked/2012/04_Apr/'
print ('Changing to ' + directory)
ftp.cwd(directory)
ftp.retrlines('LIST')
print ('Accessing files')
filenames = ftp.nlst() # get filenames within the directory
print (filenames)
ここで問題が発生するのは、ファイルをフォルダにダウンロードすることです。以下のコードは私が試したことですが、書き込みを行う前にファイルが作成されていないため、パーミッションエラーが発生します。
for filename in filenames:
local_filename = os.path.join('C:/ArcGis/New folder', filename)
file = open(local_filename, 'wb')
ftp.retrbinary('RETR '+ filename, file.write)
file.close()
ftp.quit()
ここにエラーとコールバックがあります。
コールスタックを含む正確なエラーメッセージを入力してください。 + 'C:/ ArcGis/New folder'フォルダは存在しますか? –
はい、フォルダが存在し、編集にエラーが含まれます。 –