如何从FTP服务器的所有子目录下载特定的文件类型?

2024-06-11 04:59:09 发布

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

我正在尝试从FTP主机gis.arkansas.gov下载所有.laz文件(更多详细信息here)。查看^{}文档,我可以列出FTP服务器中的所有目录:

from ftplib import FTP
ftp = FTP('gis.arkansas.gov')
ftp.login()
ftp.cwd('Elevation')
ftp.retrlines('LIST')

其结果如下:

>>> ftp.retrlines('LIST')
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 AGFC_RAW
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 AR State Parks
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 Bayou Meto Lidar Phase I
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 Bayou_Meto_Watershed
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 Beaver_Lake
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 Beaver_Tailwater
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 Black_River
drwxr-xr-x 1 ftp ftp              0 May 30 09:24 Blue_Mountain
# ... And so on ...

如何从每个目录(有些目录不包含.laz文件)下载所有扩展名为.laz的文件?你知道吗


Tags: 文件目录ftpmaylistgovgislaz
1条回答
网友
1楼 · 发布于 2024-06-11 04:59:09

没有魔法。你知道吗

你必须:

  • 递归到子目录中
  • 一个接一个地列出它们的内容
  • 过滤所有.laz文件
  • 为每个调用retrbinary。你知道吗

相关问题 更多 >