На ftp-сайті є файлова база даних, яку я хотів би завантажити із сценарієм Python. Зараз я думаю, що один із способів зробити це - скопіювати ftp geodatabase на базу даних geodata на моєму комп’ютері. Нижче описаний сценарій, який я розпочав. Хтось знає, як я можу змінити цей скрипт, щоб отримати ftp gdb? Дякую
Нижче наводиться мій остаточний робочий код, заснований на наданій відповіді @om_hennners.
import arcpy, os, sys
from arcpy import env
arcpy.env.overwriteOutput = True
from ftplib import FTP
directory = "/group/geodb" #location of gdb on ftp
folder = "D:\\temp\\"
out_gdb = "data.gdb"
out_path = folder + os.sep + out_gdb
copy_gdb = "hydro.gdb" # This is the gdb I would like to copy from the ftp site
ftp = FTP("10.4.2.22")
ftp.login("user", "pass")
ftp.cwd(os.path.join(directory, copy_gdb))
print "Changed to " + os.path.join(directory, copy_gdb)
filenames = ftp.nlst()
print filenames
print "starting to write"
for f in filenames:
with open(os.path.join(out_path, f), 'wb') as local_file:
ftp.retrbinary('RETR '+ f, local_file.write)
ftp.close()
print "closed ftp connection"