python获取路由器信息_python 3.5实现检测路由器流量并写入txt的方法实例
前言
本文主要给大家介绍了关于利用python 3.5检测路由器流量并写入txt的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍。
环境交代:win10+python3.6
代码非常简单,
模拟登陆,没有
网页标签过滤,没有
多线程,也没有
文本处理,只有涉及到字符串截取
本地文本写入,有
这么低级的代码是因为这个路由器页面非常垃圾,用不到~~~,不过这样也适合初学者观看,当然了,后续会尝试添加更多功能
首先我们对自己的需求要进行分析,新手嘛,先把复杂的东西简单化,模块化,整理出思路,再一步步的去实现,最后整合。
1、获得数据
网页编码,编码没有处理好会报错,涉及到一些函数
编码转换,read()方法获取到的非字符串类型,要预先进行处理
2、处理数据
方法有很多,正则,字符串截取,等等不一一介绍,适合的才是最好的,我觉得正则是很强大的,但是也是相当反人类的
3、保存数据
注意win下路径和linux下路径写法不同
写入的编码类型需要进行处理
重点讲一讲我遇到的坑
一般来讲右键查看页面编码,如图所示,因为在国外是非常奇怪的编码
当时我就蒙蔽了,这是什么鬼~
这个时候我们需要用到chardet库来判断编码类型,拿百度举例,自行百度python第三方库如何安装,这里不做阐述
得到的结果如下:
1.取得字符串
因为是欧洲网站,获取的却是一个 【ISO-8859-1】的网页编码。
由于这里我们用read()方法读取,获取到的是bytes类型,此时需要转换成str类型的,才可以进行下一步的处理,如果不处理就会有下列错误
TypeError: a bytes-like object is required, not 'str'
这里可以使用decode()方法处理一下
html = html.decode("ISO-8859-1")
使用type()方法检测下编码
print(type(html))
反馈
2.处理字符串
这里我使用的是split()方法,使用方法呢,推荐大家学会查手册,这里也不详细再解释了。
我通过split()方法截取到了自己需要的字符串,然后用time()函数获取当前本地时间,然后用+连接符把当前本地时间和处理后的字符串连接起来,再在末尾接上换行符rn,因为懒到只用记事本,换行符这里只算一个小坑
3.写入txt
关于open函数,每一个参数,此篇博文讲的非常清楚非常详细,感谢博主的整理,大家可以看看,建议收藏
要强调的有2个参数
encoding和newline,因为用的比较少,然后很多文章并不会提到
有人可能会说,哇,真的懒
没错,我就是懒,而且再说了,写了还没人家写的好,那我何必误人子弟。
下面贴上全部代码
本来当初的想法是每秒获取一次流量,写入txt,再读txt,通过数据来绘图
但是有事暂时搁下了,只是win计划任务定时运行,勉强凑活用下日后再学习补充
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。
原文链接:https://segmentfault.com/a/1190000012450345
python获取路由器信息_python 3.5实现检测路由器流量并写入txt的方法实例相关推荐
- python获取远程主机信息_python远程获取主机监控信息
轻松监控上万台服务器:企业运维监控平台架构设计与实践指南 一.Cacti/Nagios/Zabbix/centreon/Ganglia之抉择 1.cacti Cacti是一套基于PHP,MySQL,S ...
- linux多cpu运行python脚本,linux系统使用python获取cpu信息脚本分享
linux系统使用python获取cpu信息脚本分享 代码如下: #!/usr/bin/env Python from __future__ import print_function from co ...
- python 获取excel信息,下载对应图片
python 获取excel信息,下载对应图片 import pandas as pd from openpyxl import load_workbook import requests impor ...
- Python获取地震信息!能预测地震吗?
6月17日22分25分,四川省宜宾市长宁县发生了6.0级地震,成都高新减灾研究所与应急管理部门联合建设的大陆地震预警网成功预警本次地震,提前10秒向宜宾市预警,提前61秒向成都预警. 虽然自己还不能写 ...
- Python获取电脑信息
我做了一个Python获取电脑信息的程序,小部分代码是网上找的, 本来想把这个做成一个坑人小程序的 到后面没有灵感了 有想法的可以帮我做一下 私聊发代码给我 代码(pycharm运行通过) # -*- ...
- python 提取网关信息_python:使用netifaces模块获取本机IP网关等信息
python获取本机IP有很多种方法,可每种方法都有局限性. 使用netifaces模块获取本机IP网关等信息,需要安装netifaces模块,不管windows还是linux都可以通用. 一.程序: ...
- python获取登录按钮_Python:Selenium模拟Chrome浏览器抓取淘宝商品信息
对于采用异步加载技术的网页,有时候想通过逆向工程的方式来设计爬虫进行爬取会比较困难,因此,要想通过python获取异步加载数据往往可以使用Selenium模拟浏览器的方式来获取. Selenium是一 ...
- Python获取磁盘使用信息,python获取GPU信息,python根据进程号获取进程信息,pynvml 获取GPU信息,psutil 获取进程信息,系统信息等
一.工具:psutil模块 psutil是一个跨平台模块,试用相应方法可以直接获取计算机CPU,内存,磁盘,网络等资源使用情况:可以使用我们学习知识与这模块用来做系统监控,性能分析:如果大家熟悉Lin ...
- layui获取input信息_python爬虫—用selenium爬取京东商品信息
python爬虫--用selenium爬取京东商品信息 1.先附上效果图(我偷懒只爬了4页) 2.京东的网址https://www.jd.com/ 3.我这里是不加载图片,加快爬取速度,也可以用Hea ...
最新文章
- LeetCode 11. Container With Most Water--Java 解法--困雨水简单版
- jxl导入Excel文件抛出java.lang.StringIndexOutOfBoundsException异常
- EOS账户系统(2)账户和钱包
- python 计算时间重叠_Python基于时间信息(即时、间隔)计算项目之间的相似性...
- 【论文解读】目标检测一卷到底之后,终于有人为它挖了个新坑|CVPR2021 Oral
- .NET Core 控制台应用程序使用异步(Async)Main方法
- 企业信息管理计算机考什么,考信息系统运行管理员要学什么?
- [导入]javascript总结
- Sharepoin学习笔记—架构系列—06 Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 1
- 搞懂Java的反射机制
- 行为型设计模式(3)—— 命令模式(Command Pattern)
- Makefile:include和-include
- HTTPModules与HTTPHandler
- android 最新adt下载地址,Android SDK和最新ADT下载地址
- python基础坑点
- 一意孤行亚马逊----一个钓鱼疯子的巴西亚马逊之行( 11.9月 27日 最惨的一天 ) 作者:咸水鱼...
- python discuz_[Python代码]Discuz!论坛(X2.5)发帖及回复脚本
- 华为交换机:利用Excel转换MAC地址公式
- macbook上好用的解压软件_全能解压 Mac下最好用的解压缩软件
- 基于物理的渲染理论基础(PBR渲染)