基于socket的局域网聊天程序
本文最后更新于:2023年12月31日 下午
一、概述
项目仓库
https://github.com/Godtokoo666/projectz
编写语言
Python
主要库
socket,thread,PyQt6,sqlite3
开发逻辑
在功能上区分为服务端和客户端
服务端处理数据库逻辑和客户端请求,使用套接字的recv方法接收请求,通过send发送请求,recv针对单一connection,send针对一个或多个connection,多个connetcion作为对象储存在服务端,通过多线程向多个connetion发送请求。
客户端部署了Qt6GUI框架,通过监听按钮等的动作,完成交互,同样通过send方法发送请求,通过recv方法接收信息。为了不妨碍主线程的进行,客户端同样采用了多线程,另起一个线程,处理来自服务端的命令和信息。
二、演示
截图
登录界面:
注册界面:
群聊主界面:
演示视频:
请前往: https://pan.funfs.com/demo/demo.mp4
访问密码:oop935891
To Do List
- 群聊私聊图片发送、预览
- emoji加入
- 创建web界面
基于socket的局域网聊天程序
https://blog.funfs.com/project/python-lanchat/