[英]"Permission denied" error from downloading all files from FTP folder
到目前為止,我已經從 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()
這是錯誤和回調。
目錄列表包括.
對文件夾的引用(可能還有..
對父文件夾的引用)。
你必須跳過它,你不能下載它(他們)。
for filename in filenames:
if (filename != '.') and (filename != '..'):
local_filename = os.path.join('C:/ArcGis/New folder', filename)
file = open(local_filename, 'wb')
ftp.retrbinary('RETR '+ filename, file.write)
file.close()
實際上你必須跳過列表中的所有文件夾。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.