Pythonsocket上传和下载文件
来源:互联网 发布:安卓模拟器for mac版 编辑:程序博客网 时间:2024/06/06 01:09
Pythonsocket上传和下载文件
服务端:
import socket ,os,jsonserver = socket.socket(socket.AF_INET,socket.SOCK_STREAM)server.bind(('',9999))server.listen(5)while True: conn,addr = server.accept() print('conn is addr :',addr) while True: cmd_obj = conn.recv(1024).decode() print('cmd_obj=%s'%cmd_obj) if not cmd_obj:break if cmd_obj == 'get': filename = r'D:\\IStudy\\Oracle\\1.jpg' basefilename = os.path.basename(filename) myfile = open(filename,'rb') myfile_size = os.path.getsize(filename) print(basefilename) data = {'filename':basefilename,'filesize':myfile_size} json_obj = json.dumps(data) conn.send(json_obj.encode()) for readline in myfile: conn.send(readline) else: conn.send(b'finish') print('file send is finish')
客户端:
import socket,jsonclient = socket.socket(socket.AF_INET,socket.SOCK_STREAM)client.connect(('127.0.0.1',9999))while True: data = input('>>') client.send(data.encode()) json_obj = client.recv(1024).decode() file_info = json.loads(json_obj) filename = file_info['filename'] filesize = file_info['filesize'] print('filename=',filename,'filesize=',filesize) recevie_size = 0 myfile = open(filename,'wb') while recevie_size < filesize: filedata = client.recv(1024) myfile.write(filedata) recevie_size += len(filedata) else: myfile.close() print('receive file finished!')
阅读全文
0 0
- Pythonsocket上传和下载文件
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 文件上传和下载
- 屏幕适配、自适应(第三方之Masonry)
- 阿里云中间件
- ContentProvider内容提供者和ContentResolver内容访问者
- maven + myBatis,myBatis绑定接口失败
- POJ 3082 'Roid Rage 笔记
- Pythonsocket上传和下载文件
- Python第三方库的安装及测试
- c语言i++和++i和左值的问题
- mybatis进阶(7)--查询缓存之一级缓存
- 微信支付逻辑图
- Spark jobServer搭建+提交作业执行
- redis-skipList 源码解析
- linux 下 vim编辑器插件安装 方便python脚本编写
- 大数据的核心:数据挖掘