python在线聊天室(带聊天保存)

python Socket在线聊天室(带聊天保存)

需求功能

1.聊天信息保存功能(服务端会把信息保存到一个txt里面)
2.使用pyqt5框架作为一个可视化界面
3.具备一个服务端和多个客户端的功能
4.具备离线加入黑名单(离线踢出)
5.具备在线加入黑名单(在线加入黑名单被踢出)
6.具备群聊功能(可以发送消息给全部)
7.具备私聊功能(可以发送指定消息给对方)
8.具备在线浏览所有用户(可以查看哪些用户在线)
9.实时监听用户在线功能,用户关闭窗口会自动清除用户在线列表

测试用例

1.服务端私聊(包括聊天信息保存) 通过
2.服务端群聊(包括聊天信息保存) 通过
3.客户端私聊(包括聊天信息保存) 通过
4.客户端群聊(包括聊天信息保存) 通过
5.服务端端口占用启动 通过
6.客户端端口占用启动 通过
7.在线加入黑名单(多个客户端在线用户被移除) 通过
8.离线加入黑名单(客户端无法启动) 通过
9.服务端断开连接(全部端口连接) 通过
10.客户端断开连接 通过
11.服务端加入黑名单测试(服务端不能加入黑名单) 通过
12.服务端没有启动,客户端启动(消息转发服务端,服务端没有启动,客户端无法启动) 通过
13.黑名单重复加入(指定端口号的黑名单无法重复添加) 通过
14.黑名单移除测试 通过

运行视频链接:

运行视频链接

项目截图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/652334.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

搜索<1>——DFS与回溯

前言:本系列(搜索)博客主要介绍的是用DFS解决一些问题,并不是图论中的DFS dfs相信大家都有了解,TA是一个图论中的算法。 中心思想就是:只要干不死,就往死里干! 具体来说,就是只要符合要求,就一直往前搜,…

算法训练营Day59(单调栈2)

503.下一个更大元素II 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 提醒 这道题和 739. 每日温度 几乎如出一辙,可以自己尝试做一做 class Solution:def nextGreaterElements(self, nums: List[int]) -> List[int]:dp [-1] * len(n…

什么是网络?

你是一台电脑,你的名字叫 A 很久很久之前,你不与任何其他电脑相连接,孤苦伶仃。 直到有一天,你希望与另一台电脑 B 建立通信,于是你们各开了一个网口,用一根网线连接了起来。 用一根网线连接起来怎么就能&…

【大数据】Flink 架构(一):系统架构

Flink 架构(一):系统架构 1.Flink 组件1.1 JobManager1.2 ResourceManager1.3 TaskManager1.4 Dispatcher 2.应用部署2.1 框架模式2.2 库模式 3.任务执行4.高可用设置4.1 TaskManager 故障4.2 JobManager 故障 Flink 是一个用于状态化并行流处…

第九篇【传奇开心果系列】beeware的toga开发移动应用示例:人口普查手机应用

传奇开心果博文系列 系列博文目录beeware的toga开发移动应用示例系列博文目录一、项目目标二、安装依赖三、实现应用雏形示例代码四、扩展功能和组件的考量五、添加更多输入字段示例代码六、添加验证功能示例代码七、添加数据存储功能示例代码八、添加数据展示功能示例代码九、…

JavaWeb,Vue的学习(上)

概述 Vue的两个核心功能 声明式渲染:Vue 基于标准 HTML 拓展了一套模板语法,使得我们可以声明式地描述最终输出的 HTML 和 JavaScript 状态之间的关系。响应性:Vue 会自动跟踪 JavaScript 状态并在其发生变化时响应式地更新 DOM ViteVue3项目…

Image Enhancement Guided Object Detection in Visually Degraded Scenes

Abstract 目标检测准确率在视觉退化场景下降严重。一个普遍的解决方法就是对退化图像进行增强然后再执行目标检测。但是,这是一种次优的方案,而且未必对目标检测的准确率有提升,因为图像增强和目标检测两个任务的不同。为了解决这个问题&…

【算法专题】动态规划之回文子串问题

动态规划6.0 动态规划 - - - 回文子串问题1. 回文子串2. 最长回文子串3. 分割回文串Ⅳ4. 分割回文串Ⅱ5. 最长回文子序列6. 让字符串成为回文串的最少插入次数 动态规划 - - - 回文子串问题 1. 回文子串 题目链接 -> Leetcode -647.回文子串 Leetcode -647.回文子串 题目…

elasticsearch8.x版本docker部署说明

前提,当前部署没有涉及证书和https访问 1、环境说明,我采用三个节点,每个节点启动两个es,用端口区分 主机角色ip和端口服务器Amaster192.168.2.223:9200服务器Adata192.168.2.223:9201服务器Bdata,master192.168.2.224:9200服务器Bdata192.1…

5_机械臂运动学基础_矩阵

上次说的向量空间是为矩阵服务的。 1、学科回顾 从科技实践中来的数学问题无非分为两类:一类是线性问题,一类是非线性问题。线性问题是研究最久、理论最完善的;而非线性问题则可以在一定基础上转化为线性问题求解。 线性变换: 数域…

【代码随想录-数组】螺旋矩阵 II

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

设计模式:简介及基本原则

简介 设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化&#xff…

Jenkins邮件推送配置

目录 涉及Jenkins插件: 邮箱配置 什么是授权码 在第三方客户端/服务怎么设置 IMAP/SMTP 设置方法 POP3/SMTP 设置方法 获取授权码: Jenkins配置 从Jenkins主面板System configuration>System进入邮箱配置 在Email Extension Plugin 邮箱插件…

docker compose实现mysql一主多从

参考了很多博客,死磕了几天,最终跑起来了,不容易,晚上喝瓶82年可乐庆祝下。 1、整体文件结构,这里忽略log、conf、data映射目录 2、docker-compose.yml文件内容如下: version: 3.3 services:mysql-master…

Elasticsearch中的分词器的基本介绍以及使用

目录 一、分词器的基本概念 二、分词器类别 (1)默认分词器 (2)IK分词器 (3)拼音分词器 (4)自定义分词器 一、分词器的基本概念 在Elasticsearch中,分词器&#xff…

04_前后端交互技术之Ajax异步请求

本课目标 理解什么是同步请求和异步请求理解Ajax的请求原理掌握Ajax的基本用法掌握课堂案例 1. 同步请求与异步请求的区别 1.1 什么是同步请求 同步请求:发送请求后需要等待服务端响应,同步请求阻止代码的执行,这会导致屏幕上出现“冻结”…

Linux exit命令教程:结束当前的登录会话(附案例详解和注意事项)

Linux exit命令介绍 exit命令用于结束当前的登录会话。当你在命令行界面(shell)运行exit命令时,它会终止你当前的shell会话。 在命令行界面或shell脚本中执行exit命令默认会直接退出终端,或者你还可以在exit命令后添加一个参数&…

Linux中断 -- 中断路由、优先级、数据和标识

目录 1.中断路由 2.中断优先级 3.中断平衡 4.Linux内核中重要的数据结构 5.中断标识 承前文,本文从中断路由、优先级、数据结构和标识意义等方面对Linux内核中断进行一步的解析。 1.中断路由 Aset affinity flow GIC文中有提到SPI类型中断的路由控制器寄存器为…

华为HCIP Datacom H12-831 卷14

多选题 1、以下哪些Community属性可以保证BGP路由条目的传播范围只在AS内? A No_Export B No_Export_Subconfed C Interne D No_Advertise 正确答案 A,B 解析:Internet:缺省情况下,所有的路由都属于internet团体。具有此属性的路由…

回归预测 | Matlab基于SSA-SVR麻雀算法优化支持向量机的数据多输入单输出回归预测

回归预测 | Matlab基于SSA-SVR麻雀算法优化支持向量机的数据多输入单输出回归预测 目录 回归预测 | Matlab基于SSA-SVR麻雀算法优化支持向量机的数据多输入单输出回归预测预测效果基本描述程序设计参考资料 预测效果 基本描述 1.Matlab基于SSA-SVR麻雀算法优化支持向量机的数据…