用于连接 FTP 并下载文件的 Python 2.5 脚本

Python 2.5 script to connect to FTP and download file(用于连接 FTP 并下载文件的 Python 2.5 脚本)

本文介绍了用于连接 FTP 并下载文件的 Python 2.5 脚本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我确信这已经解决了,但我似乎找不到类似的问答(新手)使用 Windows XP 和 Python 2.5,我正在尝试使用脚本连接到 FTP 服务器并下载文件.它应该很简单,但是按照类似脚本的说明,我得到了错误:

I am sure this has been resolved before but I cannot seem to find a similar Q&A (newbie) Using Windows XP and Python 2.5, I m trying to use a script to connect to an FTP server and dowload files. It should be simple but following the instructions of similar scripts I get the errors:

ftp.login('USERNAME')
  File "C:Python25libftplib.py", line 373, in login
    if resp[0] == '3': resp = self.sendcmd('PASS ' + passwd)
  File "C:Python25libftplib.py", line 241, in sendcmd
    return self.getresp()
  File "C:Python25libftplib.py", line 216, in getresp
    raise error_perm, resp
error_perm: 530 User USERNAME cannot log in.

我使用的脚本是:

def handleDownload(block):
    file.write(block)
    print ".",

# Create an instance of the FTP object
# FTP('hostname', 'username', 'password')
ftp = FTP('servername')

print 'ftplib example'
# Log in to the server
print 'Logging in.'
# You can specify username and password here if you like:
ftp.login('USERNAME', 'password') 
#print ftp.login()

# This is the directory 
directory = '/GIS/test/data'
# Change to that directory.  
print 'Changing to ' + directory
ftp.cwd(directory)

# Print the contents of the directory
ftp.retrlines('LIST')

我很欣赏这可能是一个微不足道的问题,但如果有人能提供一些见解,那将非常有帮助!

I appreciate this might be a trivial question, but if anyone can provide some insights it would be very helpful!

谢谢,S

推荐答案

我不明白你用的是哪个库.Python 标准 urllib2 就足够了:

I can't understand which library are you using. Python standard urllib2 is sufficient:

import urllib2, shutil

ftpfile = urllib2.urlopen("ftp://host.example.com/path/to/file")
localfile = open("/tmp/downloaded", "wb")
shutil.copyfileobj(ftpfile, localfile)

如果您需要登录(匿名 登录是不够的),请在 url 中指定凭据:

If you need to login (anonymous login isn't sufficient), then specify the credentials inside the url:

urllib2.urlopen("ftp://user:password@host.example.com/rest/of/the/url")

这篇关于用于连接 FTP 并下载文件的 Python 2.5 脚本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:用于连接 FTP 并下载文件的 Python 2.5 脚本