python 读取更新中的log 或其它文本方式


Posted in Python onDecember 24, 2019

在项目中遇到这个问题,想把本地的log文件通过 Server-Send Event 的形式 发送给前端。

但是如何把那些 新增加log文本 读取出来就成了问题。

想过遍历log文件取得行数,读取最后几行文件,这种方式,不过缺点也很明显,log 文件很有可能会重复。因此在网上看了些介绍,也查了些资料,整理了如下代码。

start_point=0
def read_logs():
  fo = open("heakth_info.log", "rb") # 一定要用'rb'因为seek 是以bytes来计算的
  print ("文件名为: ", fo.name)
  global start_point #使用全局变量,让start_point 时刻保持在已经输出过的那个字节位
  fo.seek(start_point, 1)#移动文件读取指针到指定位置 
  for line in fo.readlines():
    print ("读取的数据为:" + str(line.decode()))
  #输出后的指针位置赋值给start_piont
  start_point=fo.tell()
  fo.close()

在这里fo = open("heakth_info.log", "rb") 一定要用rb 因为seek是以字节算的。

使用全局变量 让start_point 在运行过后始终保持在最后输出完成的位置。成为下次运行的起点。

fo.tell() 返回的是文件当前的位置,在运行结尾赋值给 start_point

这样只要定时呼出这个 函数 就能获得最新的 log 了。

以上这篇python 读取更新中的log 或其它文本方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中的对象拷贝示例 python引用传递
Jan 23 Python
Python使用chardet判断字符编码
May 09 Python
Python使用三种方法实现PCA算法
Dec 12 Python
Python+OpenCV实现车牌字符分割和识别
Mar 31 Python
django 开发忘记密码通过邮箱找回功能示例
Apr 17 Python
解决python xlrd无法读取excel文件的问题
Dec 25 Python
python psutil监控进程实例
Dec 17 Python
Python面向对象之继承原理与用法案例分析
Dec 31 Python
python误差棒图errorbar()函数实例解析
Feb 11 Python
Python利用FFT进行简单滤波的实现
Feb 26 Python
matplotlib更改窗口图标的方法示例
Feb 03 Python
Python import模块的缓存问题解决方案
Jun 02 Python
如何基于python操作excel并获取内容
Dec 24 #Python
python实现tail实时查看服务器日志示例
Dec 24 #Python
Python 模拟动态产生字母验证码图片功能
Dec 24 #Python
python中return的返回和执行实例
Dec 24 #Python
Python文件操作函数用法实例详解
Dec 24 #Python
Python的形参和实参使用方式
Dec 24 #Python
python接口自动化如何封装获取常量的类
Dec 24 #Python
You might like
php 全文搜索和替换的实现代码
2008/07/29 PHP
php中3des加密代码(完全与.net中的兼容)
2012/08/02 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名)
2016/05/09 PHP
CI(CodeIgniter)框架视图中加载视图的方法
2017/03/24 PHP
PHP实现正则表达式分组捕获操作示例
2018/02/03 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
jQuery.ajax 用户登录验证代码
2010/10/29 Javascript
利用jQuery操作对象数组的实现代码
2011/04/27 Javascript
JavaScript中的运算符种类及其规则介绍
2013/09/26 Javascript
Eclipse配置Javascript开发环境图文教程
2015/01/29 Javascript
Knockoutjs 学习系列(一)ko初体验
2016/06/07 Javascript
Vue数据驱动模拟实现2
2017/01/11 Javascript
JS按钮闪烁功能的实现代码
2017/07/21 Javascript
jquery一键控制checkbox全选、反选或全不选
2017/10/16 jQuery
async/await地狱该如何避免详解
2018/05/10 Javascript
使用easyui从servlet传递json数据到前端页面的两种方法
2019/09/05 Javascript
js实现简单的随机点名器
2020/09/17 Javascript
解决vue prop传值default属性如何使用,为何不生效的问题
2020/09/21 Javascript
[02:04]2020年夜魇暗潮预告片
2020/10/30 DOTA
[52:26]完美世界DOTA2联赛决赛 FTD vs Phoenix 第一场 11.08
2020/11/11 DOTA
[51:39]DOTA2-DPC中国联赛 正赛 Magma vs LBZS BO3 第二场 2月7日
2021/03/11 DOTA
python实现划词翻译
2020/04/23 Python
Python单链表简单实现代码
2016/04/27 Python
Python 多进程和数据传递的理解
2017/10/09 Python
OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
2018/01/05 Python
Python实现繁体中文与简体中文相互转换的方法示例
2018/12/18 Python
纯CSS3实现图片无间断轮播效果
2016/08/25 HTML / CSS
德国高性价比网上药店:medpex
2017/07/09 全球购物
Exoticca英国:以最优惠的价格提供豪华异国情调旅行
2018/10/18 全球购物
毕业生找工作的求职信范文
2013/12/24 职场文书
电工技术比武方案
2014/05/11 职场文书
房屋买卖协议书范本
2014/09/27 职场文书
2014年标准化工作总结
2014/12/17 职场文书
世界红十字日活动总结
2015/02/10 职场文书
市语委办2016年第十九届“推普周”活动总结
2016/04/05 职场文书