python3.5基于TCP实现文件传输

yipeiwu_com6年前Python基础

本文实例为大家分享了python3.5基于TCP实现文件传输的具体代码,供大家参考,具体内容如下

服务器代码

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

from socket import *
import _thread

def tcplink(skt,addr):
  print(skt)
  print(addr,"已经连接上...")
  print('开始发送文件')
  with open('./ww.jpg', 'rb') as f:
    for data in f:
      print(data)
      skt.send(data)
  f.close()
  skt.close()


HOST = "127.0.0.1"
PORT = 23333
ADDR = (HOST,PORT)

server = socket(AF_INET,SOCK_STREAM)
server.bind(ADDR)
server.listen(5)

while True:
  print("等待连接...")
  skt,addr = server.accept()
  print(skt)
  try:
    _thread.start_new_thread(tcplink,(skt,addr))
  except:
    print("线程无法启动")
server.close()

客户端代码

# _*_ utf-8 _*_

from socket import *

HOST = "127.0.0.1"
PORT = 23333
ADDR = (HOST,PORT)

client = socket(AF_INET,SOCK_STREAM)
client.connect(ADDR)

with open("./gg.jpg","ab") as f:
  while True:
    data = client.recv(1024)
    if not data:
      break;
    f.write(data)

f.close()
print("接收完毕")
client.close()

上面的代码都经过测试能正常运行,希望大家能有所启发。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python使用内置json模块解析json格式数据的方法

Python使用内置json模块解析json格式数据的方法

本文实例讲述了Python使用内置json模块解析json格式数据的方法。分享给大家供大家参考,具体如下: Python中解析json字符串非常简单,直接用内置的json模块就可以,不需...

Linux下python制作名片示例

Linux下python制作名片示例

建立cards_main文件: # _*_ coding:utf-8 _*_ """ file: cards_main.py date: 2018-07-18 19:47 auth...

Python脚本文件打包成可执行文件的方法

Python脚本文件打包成可执行文件的方法

将Python脚本文件包装成可执行文件,其目的有二: 一则: 不需要依赖Python编译器就可以运行软件 二则: 不想让自己的源码公布出去 常用的工具有: py2exe、cx_freez...

Django使用中间键实现csrf认证详解

Django中的csrf认证实现的原理 调用 process_view 方法 检查视图是否被 @csrf_exempt (免除csrf认证) - 去请求体或cookie中获取toke...

浅谈用VSCode写python的正确姿势

浅谈用VSCode写python的正确姿势

最近在学习python,之前一直用notepad++作为编辑器,偶然发现了VScode便被它的颜值吸引。用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还...