python 上传下载文件
2016-03-09 11:11
603 查看
server.py #!/usr/bin/env python # -*- coding:utf-8 -*- import SocketServer import os class MySocketServer(SocketServer.BaseRequestHandler): def handle(self): filename_dir = '/home/feng/feng' conn = self.request data = conn.recv(1024) filename,filename_size = data.strip().split('|') print filename,filename_size recv_size = 0 file_dir=os.path.join(filename_dir,filename) f = open(file_dir,'w+') while True: if int(filename_size) != recv_size : data = conn.recv(1024) recv_size += len(data) print int(filename_size),recv_size f.write(data) else: break # else: # data = conn.recv(int(filename_size) - recv_size) # print int(filename_size) - recv_size # break print 'upload successed.......' if __name__ == '__main__': ip_port = ('127.0.0.1',55555) server = SocketServer.ThreadingTCPServer(ip_port,MySocketServer) server.serve_forever() ======================================= client.py #!/usr/bin/env python # -*- coding:utf-8 -*- import socket import os client = socket.socket(socket.AF_INET,socket.SOCK_STREAM) ip_port = ('127.0.0.1',55555) client.connect(ip_port) while True: filepath = raw_input('请输入方法和上传路径:/root/1.txt: ') filename_size = os.stat(filepath).st_size filename = os.path.basename(filepath) print '#####################' print filepath,filename_size print '#####################' client.send(filename + '|' + str(filename_size)) send_size = 0 f = open(filepath,'r') Flag = True while Flag: if filename_size != send_size: data = f.read(1024) send_size += len(data) client.send(data) else: Flag=False f.close() client.close()
相关文章推荐
- python真的还蛮可爱的(*^__^*)
- python逐个读取txt字符修改过后放到另一个txt文件中
- python学习笔记二--列表的使用
- 今天开始学习python
- python类、对象、方法、属性之类与对象
- 【OpenStack】OpenStack系列1之Python虚拟环境搭建
- python之import机制
- 【零基础入门学习Python笔记002】用Python设计第一个游戏:课后测试集答案
- Python Import 详解
- Python -- class内置函数__str__
- python deal with mysql
- Python 知识库,不错!
- 一篇文章让你彻底搞清楚Python中self的含义
- python 面向对象编程-进阶篇
- python 库
- 001第一部分[python基础]
- Python3.3 学习笔记
- python编程之函数思想
- How to set Selenium Python WebDriver default timeout?
- 如何入门 Python 爬虫?