1. python文件转字节流上传
图片,视频都是二进制的,你读取的时候写 rb ,然后你在请求的时候记得把视频转成.content
像这样load_src = requests.get("http://"+srcs[i], headers=headers).content
2. Python 实现 tcp 网络程序,发送、接收数据
TCP协议是面向连接的、可靠的、基于字节流的传输层通信协议。在进行TCP通信时,需要经过创建连接、数据传送和终止连接三个步骤。这类似于生活中打电话的过程,通信开始前需先建立连接。
在TCP通信模型中,服务器端和客户端在连接前均需要创建连接。服务器端可以处理多个客户端的连接请求,而客户端通常只与一个服务器进行通信。当客户端连接到服务器时,服务器端会创建一个新的套接字来标记这个客户端,以单独为其提供服务。
服务器端通过listen函数将创建的主动套接字变为被动套接字,以接收新的客户端连接请求。客户端则使用connect函数主动链接服务器。TCP通信中,必须先进行链接才能进行数据交换。当客户端需要关闭连接时,可以调用close函数。服务器端的recv函数会等待客户端发送数据或调用close函数解除堵塞状态。通过检查recv返回的数据长度,可以判断客户端是否已下线。
在TCP客户端和服务器端的构建过程中,服务器端需要监听特定的IP和端口以接收连接请求,而客户端则根据服务器的IP和端口信息主动发起连接。服务器端在处理多个客户端连接时,通过循环接收和处理每个客户端的数据,从而实现并发服务。
总结,TCP通信的核心在于建立连接、数据交换和断开连接的过程。服务器端需监听特定端口以接收连接请求,客户端主动发起连接。在连接中,服务器和客户端通过套接字进行数据传输,服务器通过检查recv返回的数据长度来判断客户端状态。理解TCP通信的这一系列流程,对于构建可靠的网络应用程序至关重要。