python实现socket互传json文件

该项目使用Python通过socket实现两个节点间的JSON文件互相传递。每个节点既是服务端也是客户端,建立双工通信,能主动发送和接收文件。参考了相关代码实现,详细过程见原文链接。

项目需要,在借鉴他人已有代码的基础上实现了用python和socket互传json文件,注意是轮流发送文件。特点是两端均既为服务端也为客户端,建立了两个信道,均可执行向对方发送指令。

好处是两者平权,己方文件生成后进行发送,主动给出发送命令。

主要借鉴的代码如下,如有任何问题,请与我联系。
链接: https://www.cnblogs.com/LyShark/p/11317152.html

先发送的一方:

import socket
import os
import json
import time

def main():
    bool = 0    # bool值用来定义处于发送状态还是接收状态,这里是先发送
    count = 0    # 用于计数命名文件
    while True:
        if bool == 0:    # 客户端
            print('waiting for file...')
            ip_addr = ("192.168.1.114", 9990)    # 客户端绑定另一个电脑的ipv4地址,端口可换1024到50000以内的值
            client = socket.socket()
            client.connect(ip_addr)

            def file_put(filedir):
                if os.path.isfile(filedir):
                    file_name = filedir  # 指定文件名称
                    file_size = os.stat(file_name).st_size  # 计算文件大小
                    file_msg = {"action": "put", "name": file_name, "
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值