20203121 实验三《Python程序设计》实验报告
实验三
# 20203121 2019-2020-2 《Python程序设计》实验三报告
课程:《Python程序设计》
班级: 2031
姓名: 尹宗颐
学号:20203121
实验教师:王志强
实验日期:2020年5月30日
必修/选修: 公选课
## 1.实验内容
创建服务端和客户端,服务端在特定端口监听多个客户请求。客户端和服务端通过Socket套接字(TCP/UDP)进行通信。
(1)创建服务端和客户端,选择一个通信端口,用Python语言编程实现通信演示程序;
(2)要求包含文件的基本操作,例如打开和读写操作。
(3)要求发送方从文件读取内容,加密后并传输;接收方收到密文并解密,保存在文件中。
(4)程序代码托管到码云
## 2. 实验过程及结果
1.在客户端、服务器端分别导入两个模块:socket和加密base64
2.在客户端,创建套接字,连接远端地址(s.connect()),在客户端创建一个文件txt,将需要传输的消息写入文件,通信前将文件的内容读出,对消息加密后,再进行传输,发送(s.sendall())和接收数据(s.recv())
3. 接受传来的数据,并发送给对方数据,将客户端传来的文件接受并创建一个新的文件,将对方文件拷贝到新的文件中。
4.传输完毕,关闭套接字
5.上传到码云
## 3. 实验过程中遇到的问题和解决过程
- 问题1:目标计算机积极拒绝,无法访问
-问题1解决方案:在命令行中通过netstat -na查询本机可用的端口,并连接
## 其他(感悟、思考等)
本次实验在操作上并不复杂,对云班课上的代码进行修改后即可运行。但对代码的理解是一大难题,这是我第一次接触爬虫方面的代码,见识到了python独特的功能,体会到了其中的方便与趣味性,同时也深感自己还有很多东西要学。
## 参考资料
云班课代码