python判断ftp服务器上的文件是不是文件夹
时间: 2023-08-19 07:04:53 浏览: 174
可以通过使用 FTP 库中的 dir() 方法来获取指定路径下的文件列表,然后判断每个文件的属性是否是文件夹。具体实现代码如下所示:
```python
import ftplib
def is_ftp_dir(ftp, name):
try:
ftp.cwd(name)
ftp.cwd('/')
return True
except:
return False
def is_ftp_file(ftp, name):
try:
ftp.size(name)
return True
except:
return False
ftp = ftplib.FTP('ftp.example.com')
ftp.login('username', 'password')
ftp.cwd('/path/to/directory')
file_list = ftp.nlst()
for file in file_list:
if is_ftp_dir(ftp, file):
print(file + ' is a directory')
elif is_ftp_file(ftp, file):
print(file + ' is a file')
else:
print(file + ' is unknown')
```
上述代码中的 is_ftp_dir() 和 is_ftp_file() 方法分别用于判断 FTP 服务器上的文件是否为文件夹和文件。如果文件是文件夹,则在该文件夹路径下再次尝试进入该文件夹,如果能够成功进入,则说明该文件为文件夹。如果文件不是文件夹,则通过 size() 方法尝试获取文件大小,如果能够获取到文件大小,则说明该文件为文件。
阅读全文