Python 死循环处理不断输出的日志
迷茫
迷茫 2017-04-18 10:26:30
0
2
581

对方接口的内容是在不断输出的(类似nginx访问日志) 我用Python写一个死循环去不停获取接口的内容, 但是内容会被重复输出, 请问大神,有什么方法对返回的内容进行处理, 每次循环只打印不同的内容?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

Antworte allen(2)
黄舟

如果是日志的话应该会有时间戳,使用SQLite进行记录和查询是一个选择

Ty80

有2种思路:

  • 利用文件指针seek函数,将每次读取后的位置f.tell()存入一个文件,下次循环时从新的位置开始读取

with open('access.log') as f:
    f.seek(n)
    ## processing 
    f.tell()
    ## save the newest postions to a file
  • 不太相关的思路是,系统级定时任务每天0点切割nginx日志,并按日期保存,我有这个脚本,运行很稳定,需要了发出来。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage