栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Python从包含给定字符串的FTP服务器下载文件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Python从包含给定字符串的FTP服务器下载文件

好的,似乎可以工作。如果尝试下载目录或扫描文件,可能会出现问题。异常处理可以很方便地捕获错误的文件类型并跳过。

glob.glob
由于您使用的是远程文件系统,因此无法正常工作,但是您可以使用
fnmatch
来匹配名称

这是代码:它下载

*DEM*
TEMP目录中匹配的所有文件,并按目录排序。

import ftplib,sys,fnmatch,osoutput_root = os.getenv("TEMP")fc = ftplib.FTP("ftp.igsb.uiowa.edu")fc.login()fc.cwd("/gis_library/counties")root_dirs = fc.nlst()for l in root_dirs:    sys.stderr.write(l + " ...n")    #print(fc.size(l))    dir_files = fc.nlst(l)    local_dir = os.path.join(output_root,l)    if not os.path.exists(local_dir):        os.mkdir(local_dir)    for f in dir_files:        if fnmatch.fnmatch(f,"*DEM*"):   # cannot use glob.glob sys.stderr.write("downloading "+l+"/"+f+" ...n") local_filename = os.path.join(local_dir,f) with open(local_filename, 'wb') as fh:     fc.retrbinary('RETR '+ l + "/" + f, fh.write)fc.close()


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/659603.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号