我正在尝试获取ftp目录中的文件名列表。我尝试了以下方法:
import ftplib
from os import listdir
from os.path import isfile, join
class FtpObj:
def __init__(self, host, user, password):
self.ftp = ftplib.FTP(host)
self.ftp.login(user=user, passwd=password)
def list_files(self):
files = []
self.ftp.dir(files.append)
print('Found ' + str(len(files)) + 'Files')
return files
但是,这会返回list
格式奇怪的文件名,格式为:
total 71708
-rw-rw-rw- 1 gpatwprd tmwdprd 4799 Nov 30 05:43 20181129.Name A with Space.CSV
-rw-rw-rw- 1 gpatwprd tmwdprd 290 Nov 30 05:09 20181129.name D with Space.CSV
第一部分-rw-rw-rw- 1 gpatwprd tmwdprd 4799 Nov 30 05:43
和第一行total 71708
都是元数据并且是多余的。
如何在没有所有这些混乱文本的情况下仅获取原始文件名?
这与How to get only a part from a string in python不同 原因:因为我正在寻找一种更干净的方法来提取文件名。在另一个问题中,它涉及具有字符串列表,然后解析这些字符串的一部分。完全无关。在将其标记为可能重复之前,请先阅读我的问题,我注意到这种情况经常发生。