zoukankan      html  css  js  c++  java
  • python访问ftp站点,下载文件

    python访问ftp站点,下载文件。

     1 #!/usr/bin/python  
     2 # -*- coding: utf-8 -*-  
     3 import ftplib  
     4 import os  
     5 import socket  
     6 import sys
     7   
     8 HOST = '10.17.25.42'  
     9 DIRN = 'file_yes'  
    10 FILE = 'wordless10m.docx' 
    11 FILE1 = 'ftp1.py' 
    12 def main():  
    13     try:  
    14         f = ftplib.FTP(HOST)  
    15     except (socket.error, socket.gaierror):  
    16         print 'ERROR:cannot reach " %s"' % HOST  
    17         return  
    18         
    19     print '***Connected to host "%s"' % HOST  
    20 
    21     try:  
    22         f.login('FTP002','¥¥¥¥¥¥¥¥')
    23     except ftplib.error_perm:  
    24         print 'ERROR: cannot login FTP'  
    25         f.quit()  
    26         return  
    27     #print f.getwelcome()
    28     print '*** Logged in as FTP002'  
    29     
    30     
    31     
    32     try:  
    33         f.cwd(DIRN)  
    34     except ftplib.error_perm:  
    35         print 'ERRORL cannot CD to "%s"' % DIRN  
    36         f.quit()  
    37         return
    38     print '*** Changed to "%s" folder' % DIRN
    39     
    40     
    41     try:  
    42         f.dir()  
    43     except ftplib.error_perm:  
    44         print 'ERRORL list "%s" info' % DIRN  
    45         f.quit()  
    46         return  
    47     print '*** This is "%s" folder info' % DIRN  
    48     
    49     
    50     try: 
    51         buf_size = 1024
    52         os.chdir("c:/share/")
    53         f.retrbinary('RETR %s' %FILE, open(FILE, 'wb').write,buf_size)  
    54         #f.retrbinary('RETR wordless10m.docx', open(FILE, 'wb').write,buf_size)  
    55     except ftplib.error_perm:  
    56         print 'ERROR: cannot read file "%s"' % FILE  
    57         os.unlink(FILE)  #delete FILE
    58     else:  
    59         print '*** Downloaded "%s" to CWD' % FILE
    60 
    61     f.quit()  
    62     return  
    63   
    64 if __name__ == '__main__':  
    65     main()  
    View Code
  • 相关阅读:
    Hadoop技术内幕——Hadoop配置信息处理
    协程,线程池
    线程知识点(锁,信号量,队列,条件)
    进程的概念
    socketserver网络编程简单的小例子
    socket 发送文件
    网络编程
    正则表达式
    面对对象--多态封装
    创建可管理的属性:property
  • 原文地址:https://www.cnblogs.com/SusieHu/p/4785476.html
Copyright © 2011-2022 走看看