使用python查找ftp上文件的文件大小

使用python查找ftp上文件的文件大小,python,ftp,filesize,Python,Ftp,Filesize,我是python新手,正在尝试读取ftp目录,并将文件名和文件大小写入文件(当前为文本文件) 我让它写文件名和路径,但一旦我添加了大小函数,它就出错了 我收到的错误是: <b>NameError: name 'FTP' is not defined</b> 与 它返回了错误: <b>AttributeError: 'generator' object has no attribute 'size'</b> AttributeError:“生成器

我是python新手,正在尝试读取ftp目录,并将文件名和文件大小写入文件(当前为文本文件)

我让它写文件名和路径,但一旦我添加了大小函数,它就出错了

我收到的错误是:

<b>NameError: name 'FTP' is not defined</b>

它返回了错误:

<b>AttributeError: 'generator' object has no attribute 'size'</b>
AttributeError:“生成器”对象没有属性“大小”

通常,要获取文件大小,请使用
os
模块:

当使用
ftputil
时,它们对
host.path.getsize

您可以在此处查看有关它的更多文档:


我知道你有答案,但是

size=FTP.size(fullpath)FALSE可能是您从中复制的

你可以看到所有函数都有FTP.function(),它只是一个标题

试用

size=ftp.size(完整路径)

我很惊讶,几乎三年来没有人指出这一点

名称错误:未定义名称“FTP”==请检查名称


我知道,因为我有同样的错误。

嗨,我也尝试过,但我收到了这个错误:WindowsError:[错误3]系统找不到指定的路径:'/WORLDVIEW/…21075\\LABEL.txt'我不确定双斜杠是从哪里来的我更新了答案以使用ftputil,希望这对你有用!嗯,更新代码后,我的错误变得更加复杂了!**文件“C:\Python27\lib\site packages\ftputil\ftp_stat.py”,第452行,在“550%s:没有这样的文件或目录”%path)ftputil.ftp_error.PermanentError:550/worldwiew/DEVI/DEVI_FIN_I027161_21075\LAB EL.txt:没有这样的文件或目录调试信息:ftputil 2.2.3,Python 2.7.3(win32)**错误结束。我想我需要使用路径,因为它在label.txt之前放置了一个\而不是/?您是正确的错误是最后一个“\”与它之前的所有“/”不同。基本上,FTP使用unix文件夹结构,当您调用“os.path.join”时,它会使用系统默认值(在您的情况下是windows)自动加入。改用
host.path.join
。很高兴听到这个消息,如果这个答案对你有用,请接受它:)是的。。。你说得对,不过他打电话给他的ftp连接主机,所以我用的是host.size(fullpath)
size = FTP.size(fullpath)
size = recursive.size(fullpath)
<b>AttributeError: 'generator' object has no attribute 'size'</b>
   ...
   for root,dirs,files in recursive: 
       for name in files: 
           fullpath = host.path.join(root, name)
           size = host.path.getsize(fullpath)