我在Windows 7上.
我无法使用简单的Python脚本连接到我的iPad:
HOST = '192.168.1.122'
try:
f = ftplib.FTP(HOST)
except (socket.error, socket.gaierror), e:
MessageBox.Show('ERROR: cannot reach "%s"' % HOST)
return
try:
f.connect(HOST,2121)
f.login()
except ftplib.error_perm:
MessageBox.Show('ERROR: cannot login anonymously')
f.quit()
return
Run Code Online (Sandbox Code Playgroud)
我遇到的错误是"getaddrinfo返回一个空列表"和"无法到达..."消息...无法解决它...
我尝试使用iPad上的几个程序进行FTP而没有成功.如果我通过DOS框FTP或使用FTP软件,它的工作原理.我在我的电脑上尝试了另一台FTP服务器,但它确实有效.
我被迫使用端口2121,所以不能改变它.
任何线索或经验?
您应该在执行任何操作之前阅读文档:
class ftplib.FTP([host[, user[, passwd[, acct[, timeout]]]]]) 返回 FTP 类的新实例。当给定主机时,将调用 connect(host) 方法。当给出 user 时,还会调用方法 login(user, passwd, acct) (如果没有给出,passwd 和 acct 默认为空字符串)。可选的 timeout 参数指定阻塞操作(如连接尝试)的超时(以秒为单位)(如果未指定,则将使用全局默认超时设置)。
因此,如果您执行 f = ftplib.FTP(HOST) ,它将失败,因为它将尝试连接到标准端口 (21) 而不是 2121。您应该获取 ftplib 的实例,然后使用 f.connect(HOST, 2121)。
http://docs.python.org/library/ftplib.html
| 归档时间: |
|
| 查看次数: |
659 次 |
| 最近记录: |