Python网络流量监视程序设计与实现

简介: Python网络流量监视程序设计与实现

Python网络流量监视程序设计与实现

1.实验目的

(1)了解计算机网络的相关基础知识。
(2)了解网络流量的计算方法。
(3)熟练安装Python扩展库psutil.
(4)了解Python扩展库psutil中网络相关函数的用法。
(5)熟练使用内置函数map()。
(6)熟练使用lambda表达式作为函数参数的用法。
(7)熟练使用字符串格式化方法。

2.实验内容

编写程序,实现网络流量监控,实时显示当前上行速度和下行速度,如图所示。

在这里插入图片描述

在这里插入图片描述

e33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gife33637908a8e2c2f0cadfb6b6c630ad9.gif

相关代码

import psutil
import time


def get_net_speed(interval):

    net_msg = psutil.net_io_counters()
    bytes_sent, bytes_recv = net_msg.bytes_sent, net_msg.bytes_recv
    time.sleep(interval)
    time1 = int(time.time())
    net_msg = psutil.net_io_counters()
    bytes_sent2, bytes_recv2 = net_msg.bytes_sent, net_msg.bytes_recv
    bytes_sent3 = bytes_sent2 - bytes_sent
    bytes_recv3 = bytes_recv2 - bytes_recv
    return bytes_sent3, bytes_recv3


while True:
    x1, x2 = get_net_speed(1)
    print("↑{:.6f} KBytes/s   ↓{:.6f} KBytes/s".format(x1/1024, x2/1024))

在这里插入图片描述

检测密码安全强度

一般地,可以作为密码字符的主要有数字、小写字母、大写字母和几个标点符号。密码安全强度主要和字符串的复杂程度有关系,字符串中包含的字符种类越多,认为其安全强度越高。按照这个标准,可以把安全强度分为强密码、中高、中低、弱密码。其中强密码表示字符串中同时含有数字、小写字母、大写字母、标点符号这4类字符,而弱密码表示字符串中仅包含4类字符中的一种。
编写程序,输入一个字符串,输出该字符串作为密码时的安全强度。

import string

lib = {'low': string.ascii_lowercase, 'up': string.ascii_uppercase,
       'num': string.digits, 'pun': ',.!;?<>'}  # 利用字典结构,构建分类的密码可用字符集

while True:
    pwd = input("请输入密码(长度不小于6个字符)").strip()
    if len(pwd) >= 6:
        break
    print("密码长度低于6个字符,请重新输入")
low = up = num = pun = 0
for i in pwd:  # 分别判断密码中是否有某类字符
    if (i in lib['low']):
        low = 1
    if (i in lib['up']):
        up = 1
    if (i in lib['num']):
        num = 1
    if (i in lib['pun']):
        pun = 1
s = low+up+num+pun
rtStr = ["弱", "中低", "中高", "强"]
print("密码{}是{}密码".format(pwd, rtStr[s-1]))
相关文章
|
3月前
|
运维 监控 数据可视化
Python 网络请求架构——统一 SOCKS5 接入与配置管理
通过统一接入端点与标准化认证,集中管理配置、连接策略及监控,实现跨技术栈的一致性网络出口,提升系统稳定性、可维护性与可观测性。
|
6月前
|
机器学习/深度学习 算法 量子技术
GQNN框架:让Python开发者轻松构建量子神经网络
为降低量子神经网络的研发门槛并提升其实用性,本文介绍一个名为GQNN(Generalized Quantum Neural Network)的Python开发框架。
153 4
GQNN框架:让Python开发者轻松构建量子神经网络
|
3月前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的青少年网络使用情况分析及预测系统
本研究基于Python大数据技术,构建青少年网络行为分析系统,旨在破解现有防沉迷模式下用户画像模糊、预警滞后等难题。通过整合多平台亿级数据,运用机器学习实现精准行为预测与实时干预,推动数字治理向“数据驱动”转型,为家庭、学校及政府提供科学决策支持,助力青少年健康上网。
|
4月前
|
JavaScript Java 大数据
基于python的网络课程在线学习交流系统
本研究聚焦网络课程在线学习交流系统,从社会、技术、教育三方面探讨其发展背景与意义。系统借助Java、Spring Boot、MySQL、Vue等技术实现,融合云计算、大数据与人工智能,推动教育公平与教学模式创新,具有重要理论价值与实践意义。
|
5月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
359 18
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
1136 55
|
6月前
|
JSON 网络安全 数据格式
Python网络请求库requests使用详述
总结来说,`requests`库非常适用于需要快速、简易、可靠进行HTTP请求的应用场景,它的简洁性让开发者避免繁琐的网络代码而专注于交互逻辑本身。通过上述方式,你可以利用 `requests`处理大部分常见的HTTP请求需求。
604 51
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
599 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
5月前
|
数据采集 存储 数据可视化
Python网络爬虫在环境保护中的应用:污染源监测数据抓取与分析
在环保领域,数据是决策基础,但分散在多个平台,获取困难。Python网络爬虫技术灵活高效,可自动化抓取空气质量、水质、污染源等数据,实现多平台整合、实时更新、结构化存储与异常预警。本文详解爬虫实战应用,涵盖技术选型、代码实现、反爬策略与数据分析,助力环保数据高效利用。
354 0
|
6月前
|
存储 监控 算法
基于 Python 跳表算法的局域网网络监控软件动态数据索引优化策略研究
局域网网络监控软件需高效处理终端行为数据,跳表作为一种基于概率平衡的动态数据结构,具备高效的插入、删除与查询性能(平均时间复杂度为O(log n)),适用于高频数据写入和随机查询场景。本文深入解析跳表原理,探讨其在局域网监控中的适配性,并提供基于Python的完整实现方案,优化终端会话管理,提升系统响应性能。
194 4

热门文章

最新文章

推荐镜像

更多