[网络] [TCP] 使用py脚本简单实现tcp通信发送/储存文件

news/2025/10/25 11:51:21/文章来源:https://www.cnblogs.com/migrator/p/19165102
[网络] [TCP] 使用py脚本简单实现tcp通信发送/储存文件

ChatGPT生成(2025年10月25日11:48:12)

目录
  • 服务端(接收端)
  • 客户端(发送端)

服务端(接收端)

#!/usr/bin/env python3
# server.py
# TCP 文件接收服务器,可手动指定监听IP和端口
# 用法: python3 server.py 监听IP 端口 输出文件名
# 例如: python3 server.py 0.0.0.0 5000 received_file.binimport socket
import struct
import sysif len(sys.argv) != 4:print(f"用法: python3 {sys.argv[0]} <监听IP> <端口> <输出文件名>")sys.exit(1)HOST = sys.argv[1]
PORT = int(sys.argv[2])
OUTPUT_FILE = sys.argv[3]# 创建 socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)print(f"服务器启动,等待连接 {HOST}:{PORT} ...")
conn, addr = s.accept()
print(f"连接来自: {addr}")# 先接收文件大小(8字节 unsigned long long)
filesize_data = conn.recv(8)
filesize = struct.unpack('Q', filesize_data)[0]
print(f"准备接收文件,大小:{filesize} bytes")received = 0
with open(OUTPUT_FILE, 'wb') as f:while received < filesize:data = conn.recv(4096)if not data:breakf.write(data)received += len(data)print(f"\r已接收: {received}/{filesize} bytes", end='')print("\n文件接收完成 ✅")
conn.close()
s.close()

客户端(发送端)

#!/usr/bin/env python3
# client.py
# TCP 文件发送客户端,可手动指定目标IP、端口和文件路径
# 用法: python3 client.py 目标IP 端口 文件路径
# 例如: python3 client.py 192.168.1.10 5000 example.binimport socket
import struct
import os
import sysif len(sys.argv) != 4:print(f"用法: python3 {sys.argv[0]} <目标IP> <端口> <文件路径>")sys.exit(1)SERVER_IP = sys.argv[1]
SERVER_PORT = int(sys.argv[2])
FILE_PATH = sys.argv[3]if not os.path.exists(FILE_PATH):print(f"文件 {FILE_PATH} 不存在!")sys.exit(1)filesize = os.path.getsize(FILE_PATH)# 创建 socket 并连接服务器
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((SERVER_IP, SERVER_PORT))
print(f"已连接服务器 {SERVER_IP}:{SERVER_PORT},开始发送文件...")# 发送文件大小(8字节 unsigned long long)
s.sendall(struct.pack('Q', filesize))# 发送文件内容
sent = 0
with open(FILE_PATH, 'rb') as f:while True:data = f.read(4096)if not data:breaks.sendall(data)sent += len(data)print(f"\r已发送: {sent}/{filesize} bytes", end='')print("\n文件发送完成 ✅")
s.close()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/946067.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《手搓》线程池

《手搓》线程池一、什么是《手搓》线程池手搓线程池并不是用来完全代替系统线程池的 你可以把手搓线程池看做系统线程池的一部分 就好比在东海用大的集装箱搞养殖 一个集装箱里养鱼 另一个集装箱里养虾 搞好隔离,鱼虾都…

kali wsl桌面使用

Kali Linux WSL系统及Win-Kex图形界面完整指南 Kali Linux WSL系统介绍 Kali Linux是基于Debian的Linux发行版,专为渗透测试和安全审计设计。Windows Subsystem for Linux (WSL)是微软开发的Windows子系统,允许用户在…

2025 年房屋改造公司最新推荐榜,聚焦企业服务能力与市场口碑深度解析老房 / 旧房 / 局部 / 小户型 / 出租房房屋改造推荐

引言 伴随存量房市场规模持续扩大,房屋改造需求年增长率超 15%,但 “服务断层、质量无保障、价格不透明” 仍是行业突出痛点。为破解选择难题,本次榜单依托中国建筑装饰协会 2025 年三季度《住宅改造服务测评白皮书…

单点登录的完成原理

单点登录的完成原理pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "C…

2025 年桥梁防撞护栏优质厂家最新推荐榜:涵盖锌钢 / ZF01/Q235/Q355B / 景观 / 灯光 / 河道 / 公路 / 喷塑等类型,全方位解析实力企业

引言 当前交通基础设施建设持续推进,桥梁作为核心交通枢纽,其安全防护体系中桥梁防撞护栏的重要性愈发凸显。然而,市场上防撞护栏产品质量参差不齐,部分厂家用劣质原材料降低成本,小作坊式企业因技术落后导致产品…

2025年欧那德语:权威解析课程体系与师资实力

引言:本文将从“课程体系与师资实力”这一核心维度出发,为读者提供一份可量化、可验证、可对照的客观参考,帮助正在比对在线德语培训产品的学习者快速锁定关键信息,减少试错成本。 背景与概况:欧那德语成立于2013…

模拟赛 R18

R18 - A 子集计数 题目描述 给定一长度为 \(n\) 的序列 \(a_1,a_2,\cdots,a_n\),再额外给定一常数 \(m\),对每个 \(k=0,1,2,\cdots,n\),请你求出有多少个 \(S\subset \{1,2,3,\cdots,n\}\),满足存在 \(T\subset S\…

2025年盐趣科研教育深度解析:从录取数据到成果落地的全链路拆解

引言 本文聚焦“录取成果与科研落地”这一核心维度,为计划通过科研背景提升冲刺海外名校的申请者提供一份可量化、可验证的客观参考,避免被营销话术裹挟。 背景与概况 盐趣科研教育(ViaX盐趣,官网www.viax.org)成…

2025年盐趣科研教育深度解析:从“科研背景”维度拆解留学突围路径

引言 本文聚焦“科研背景”这一核心维度,对盐趣科研教育进行针对性拆解,为计划通过科研提升申请竞争力的学生提供一份可落地的客观参考。 背景与概况 盐趣科研教育(ViaX盐趣,www.viax.org)成立于2015年,隶属于北…

大素材数据质量校验实战指南:从0.3%差异率到滴水不漏的核对体系

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

备战CSP:考试环境搭建与使用指南

备战CSP:考试环境搭建与使用指南 大家好!“磨刀不误砍柴工”,今天我们的目标就是磨好手上的这把“刀”——完全熟悉并掌握CSP的官方考试环境。熟练操作环境,可以在考场上为你节省宝贵的时间,避免不必要的慌乱。让…

2025年1月暖风机口碑榜:五款主流机型对比与选购避坑

寒冬深夜,孩子写作业手脚冰凉,老人起床怕冷,上班族回家想立刻暖起来——这些场景让“暖风机”成为搜索热词。可打开电商页面,PTC、石墨烯、远红外、四核等名词扑面而来,价格从百元到千元不等,噪音、耗电、干燥、…

2025 年最新推荐装修公司优质品牌排行榜:聚焦环保与工艺,口碑装修公司权威甄选

引言 随着家装市场需求持续增长,消费者对装修品质、环保标准及服务体验的要求愈发严苛。为助力业主精准筛选优质装修资源,本次榜单由中国建筑装饰协会联合行业权威测评机构共同打造,历经 3 个月调研,覆盖全国 28 个…

2025 年最新推荐 WMS 服务商综合实力排行榜:涵盖智能仓储管理系统品牌核心技术优势及协会权威测评结果

引言 在离散制造行业数智化转型浪潮中,WMS 系统对仓储管理效率的提升作用愈发关键。为精准筛选优质服务商,中国仓储与配送协会联合行业专家开展 2025 年度 WMS 服务商测评,采用 “技术实力(40%)+ 落地成效(30%)…

告别“求推荐”的迷茫,如何挑选一家真正专业的直播源码定制开发公司?

引言:为什么你总是在“求推荐”? 在百度知道、360、知乎等问答平台,我们频繁地看到这样的问题:“急需一套直播系统,求推荐一家靠谱的直播源码开发公司!”“想做直播APP,哪家定制开发公司比较专业?”。 这背后,…

加载科室列表

// 加载科室列表$.get(departments, function (res) {if (res.code === 0) {const container = $(#deptList);res.data.forEach(function (dept) {container.append(`<div style="margin:8px 0;"><…

2025 年防腐木厂家最新推荐排行榜:实力品牌品质测评,凉亭 / 地板 / 木屋厂家优选指南

引言 2025 年国内防腐木市场规模预计达 135 亿元,园林景观应用占比超 45%,但市场乱象仍存:部分厂家用劣质木材与简陋工艺降低成本,导致产品耐候性差、寿命短,难以适配极端气候与复杂场景;服务上普遍存在售前咨询…

2025 年最新推荐小程序开发公司排行榜:含定制开发 / 电商 / 预订服务 / 活动报名 / 配送解决方案

引言 当前数字化转型浪潮下,小程序已成为政企打通线上服务、提升运营效率的关键工具,但行业乱象却让选型者陷入困境:不少厂商以模板开发冒充定制服务,交付后功能无法满足需求且难以二次迭代;部分服务商技术储备不…

2025 年离散制造领域 MES 厂商最新推荐榜单:结合中国智能制造产业协会测评权威数据,全面揭晓优质服务商实力

引言 随着离散制造行业数智化转型进入深水区,企业对 MES 系统的需求愈发精细化、专业化。为帮助企业精准筛选适配服务商,中国智能制造产业协会联合行业专家团队开展 2025 年度 MES 厂商测评工作,本次测评覆盖全国 2…

跨多端前端框架对比

根据各大框架的独特的特性对Lynx、NativeScript-Vue、Ionic Vue + Capacitor、Quasar Framework、React Native和UniApp等跨端的解决方案都做了比较详细的对比和选型的参考 1. 核心框架对比 框架技术栈渲染模式性能生态…