20183122 2019-2020-2 《Python程序设计》实验三报告
课程:《Python程序设计》
班级: 1831
姓名: 陈介
学号:20183122
实验教师:王志强
实验日期:2020年5月16日
必修/选修: 公选课
1.实验内容
1)、创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
2)、实现客户端和服务器端的文件(支持任意类型的文件,如txt、mp4、jpg、png、html等)发送和接收,发送的数据采用DES加密。
2. 实验过程及结果
1)、搭建大致框架,在客户端与服务器端建立连接,服务器端实现一直工作,不受客户端异常退出导致传输异常的影响。
2)、在发送端进行数据的处理。
a、构造报头,包括要发送的文件名,操作的文件大小等信息;
cmd = input("请输入命令:")
if cmd == "exit":
exit(0)
try:
action, filename = cmd.strip().split(' ')
filesize = os.path.getsize(filename)
except:
print("命令错误或找不到文件")
break
b、先利用json模块将报头字典转化成比特流,再利用struct模块封包报头比特流长