【python_套接字】用Socket实现文件上传/下载

聊天

服务端
客户端

文件

上传文件

client.py

#导入模块
 
import socket
 
#实例初始化
client = socket.socket()
#访问服务器端口
ip_port = ("127.0.0.1",8888)
#连接主机
client.connect(ip_port)
while True:
    #输入发送的消息
    data = client.recv(1024)
    #打印接收的数据
    # 此处的byte型数据特指python3.x以de())
    print(data.decode())
    #定义一个循环,不断发送消息
    #输入发送的消息
    msg_input = input("请输入发送的消息:")
    #消息发送
    client.send(msg_input.encode())
    if msg_input == "exit":
        break
    data  = client.recv(1024)
    print(data.decode())

server.py

#导入模块
 
import socket
 
#实例初始化
client = socket.socket()
#访问服务器端口
ip_port = ("127.0.0.1",8888)
#连接主机
client.connect(ip_port)
while True:
    #输入发送的消息
    data = client.recv(1024)
    #打印接收的数据
    # 此处的byte型数据特指python3.x以de())
    print(data.decode())
    #定义一个循环,不断发送消息
    #输入发送的消息
    msg_input = input("请输入发送的消息:")
    #消息发送
    client.send(msg_input.encode())
    if msg_input == "exit":
        break
    data  = client.recv(1024)
    print(data.decode())
 
 

network

网络:就是指将具有独立功能的多台计算机通过通信线路连接起来,在网络管理软件及网络通信协议下,实现资源共享和信息传递的虚拟平台。通俗理解网络就是把双方或者多方设备连接起来的一个工具,然后可以进行数据传递。
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket,socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。

下载文件

邮件

首先邮件发送采用的是SMTP协议,邮件接收采用POP协议。
对于发邮件:python对SMTP的支持有两个模块,分别是smtplib和email
这里以QQ邮箱为例,需要先设置账户中的POP3/SMTP服务
首先点击设置,然后选择账户选项卡,接着往下拉开启POP3/SMTP服务(这里本人已经开启),接着需要绑定邮箱的电话进行短信验证.

发送邮件

接收邮件/读取邮件

POP3

socket(中文名称:套接字)

是应用层与传输层(TCP/UDP协议)的接口。是对TCP/IP的封装。是操作系统的通信机制。应用程序通过socket进行网络数据的传输。Python中的socket是我们常用的模块,当然还有socketserver模块(对socket模块的进一步封装)

协议

TCP/UDP

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拾贰_C

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值