如何用 Python 列出 FTP 服务器中的所有文件和目录?
原文:https://www . geesforgeks . org/如何使用 python 列出 ftp 服务器中的所有文件和目录/
FTP(文件传输协议)是计算机在计算机网络上传输文件时遵循的一组规则。它是基于 TCP/IP 的协议。FTP 允许客户端共享文件。文件传输协议不太安全,因为文件是以纯文本形式共享的,没有任何网络加密。
使用 python 可以使用其内置的 ftplib 模块从 FTP 服务器检索文件和目录列表。ftplib 是一个预装的 python 包,它使我们能够实现客户端 FTP 协议,为了使用它,我们只需像任何其他模块一样导入它。提取列表或目录的基本方法保持不变。
方法
- 导入模块
- 连接到默认端口上的主机
语法:
FTP(主机=,用户=,密码=,帐户=,超时=无,源地址=无,*编码='utf-8 ')
- 使用 Log in()函数登录到服务器
语法:
登录()T2【用户= '匿名' 、passwd =、acct =)
- 相应地检索文件和目录。
- 紧密联系
方法 1 :使用 retrlines()
可以使用 retrlines()函数列出文件和目录。它返回文件名、修改时间、文件大小、所有者、文件类型、权限和模式。
语法:
retrlines(cmd、 回调=None )
在这个函数中传递‘LIST’会检索文件和关于这些文件的信息。
程序:
Python 3
from ftplib import FTP
ftp = FTP('ftp.us.debian.org')
ftp.login()
# changing directory
ftp.cwd('debian')
ftp.retrlines('LIST')
ftp.quit()
输出:
图 2
该功能也可以被用户用来搜索文件或目录。搜索查询可以在星号(*)之间输入。
语法:
ftp.retrlines('LIST query ')
程序:列出以“README”开头的文件名。
Python 3
from ftplib import FTP
ftp = FTP('ftp.us.debian.org')
ftp.login()
# changing directory
ftp.cwd('debian')
ftp.retrlines('LIST *README*')
ftp.quit()
输出:
图 3
方法 2: 使用 dir()
文件和目录可以用 dir()列出。它返回文件名、修改时间、文件大小、所有者、文件类型、权限和模式。
语法:
ftp.dir()
程序:
Python 3
from ftplib import FTP
ftp = FTP('ftp.us.debian.org')
ftp.login()
# changing directory
ftp.cwd('debian')
ftp.dir()
ftp.quit()
输出:
图 4
方法 3: 使用 nlst()
文件和目录可以用 nlst()列出。它返回列表类型的文件和目录的名称。
语法:
ftp.nlst()
程序:
Python 3
from ftplib import FTP
ftp = FTP('ftp.us.debian.org')
ftp.login()
# changing directory
ftp.cwd('debian')
ftp.nlst()
ftp.quit()
输出:
图 5
版权属于:月萌API www.moonapi.com,转载请注明出处