python可以做桌面客户端吗-python实现简单ftp客户端的方法

#!/usr/bin/python

# -*- coding: utf-8 -*-

import ftplib

import os

import socket

HOST = "ftp.mozilla.org"

DIRN = "pub/mozilla.org/webtools"

FILE = "bugzilla-3.6.9-to-3.6.10-nodocs.diff.gz"

def writedata(data):

f = open(FILE,"wb")

try:

f.write(data)

finally:

f.close()

def main():

try:

f = ftplib.FTP(HOST)

except (socket.error, socket.gaierror):

print "ERROR:cannot reach " %s"" % HOST

return

print "***Connected to host "%s"" % HOST

try:

f.login()

except ftplib.error_perm:

print "ERROR: cannot login anonymously"

f.quit()

return

print "*** Logged in as "anonymously""

try:

f.cwd(DIRN)

except ftplib.error_perm:

print "ERRORL cannot CD to "%s"" % DIRN

f.quit()

return

print "*** Changed to "%s" folder" % DIRN

try:

#传一个回调函数给retrbinary() 它在每接收一个二进制数据时都会被调用

f.retrbinary("RETR %s" %FILE, writedata)

except ftplib.error_perm:

print "ERROR: cannot read file "%s"" %FILE

os.unlink(FILE)

else:

print "*** Downloaded "%s" to CWD" % FILE

f.quit()

return

if __name__ == "__main__":

main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值