from ftplib import FTP_TLS
import os
import re class MyFtp(FTP_TLS):
"""继承FTP类"""
def dirs(self, *args):
"""my dirs"""
self.encoding = 'GB18030'
cmd = 'LIST'
if args[-1:] and not isinstance(args[-1], str):
args, func = args[:-1], args[-1]
for arg in args:
if arg:
cmd = cmd + (' ' + arg)
files = []
self.retrlines(cmd, files.append)
l_files = [file.split(" ")[-1] for file in files]
return [file for file in l_files if file != "." and file != ".."]
ftps = MyFtp()
# ftps.set_debuglevel(2)
ftps.connect("172.25.22.1",21) #FTP服务IP和端口
ftps.login("user","123456") #FTP用户密码
ftps.prot_p() #继承了MyFtp类中的prot_p方法,目的是为了解决某些开启了安全SSL/TSL而连接不上的问题
ftps.set_pasv(1) #pasv(1)为被动模式,pasv(0为主动模式)
ftps.encoding = 'GB18030' #防止中文乱码
ftps.retrlines('LIST')
# a = ftps.dirs("/")
# print(a)
ftps.close()

也可以用更简单的方法:

import os
import re
import ftplib
ftps = ftplib.FTP_TLS()
ftps.connect("172.25.22.1",21)
ftps.login("user","123456")
ftps.prot_p()
ftps.encoding="GB18030"
ftps.retrlines('LIST')
ftps.close()

取出路径下的文件名

import os
import re
import ftplib
ftps = ftplib.FTP_TLS()
ftps.connect("172.25.22.1",21)
ftps.login("user","123456")
ftps.prot_p()
ftps.encoding="GB18030"
ftps.retrlines('LIST')
ftps.close()
f1 = []
for file in files:
a = re.split("[ ]+",file)
f1.append(' '.join(a[8:]))
print(f1)
ftps.close()

最新文章

  1. PG 中 JSON 字段的应用
  2. PHP定界符使用技巧
  3. maven中央仓库访问速度太慢的解决办法
  4. Python:dict用法
  5. SAAS在中国市场的发展前景
  6. 黑马程序员——JAVA基础之装饰设计模式
  7. JSP 九个隐含JSP对象
  8. 2016PHP开发者大会
  9. iOS应用内HTTP服务上传文件
  10. UVA 12436-Rip Van Winkle's Code(线段树的区间更新)
  11. LINQ中的Aggregate用法总结
  12. angr进阶(6)绕过反调试
  13. [转]MYSQL 创建存储过程
  14. 用spring的@Scheduled实现定时任务
  15. Build 2017 Revisited: .NET, XAML, Visual Studio
  16. java面向对象编程(三)--this
  17. Jlink使用技巧之烧写SPI Flash存储芯片
  18. MyBatis学习之多表查询
  19. Xshell 6 免费版本安装过程
  20. Coursera-AndrewNg(吴恩达)机器学习笔记——第二周编程作业(线性回归)

热门文章

  1. Spring(五)Spring与Web环境集成
  2. 广告成本控制-PID算法
  3. Linux下Matlab的安装
  4. RedHat 7.6 安装 Mysql 8.0.17
  5. Java8 Map computeIfAbsent方法说明
  6. day18.进程2
  7. 991. Broken Calculator
  8. 额!Java中用户线程和守护线程区别这么大?
  9. 软件篇-02-基于ZED 2和ORB_SLAM2的SLAM实践
  10. hdu1337 水题