python中将正则过滤的内容输出写入到文件中的实例


Posted in Python onOctober 21, 2018

处理过滤Apache日志文件

access_test.log文件内容

27.19.74.143 - - [30/May/2015:17:38:21 +0800] "GET /static/image/smiley/default/sleepy.gif HTTP/1.1" 200 2375
8.35.201.164 - - [30/May/2015:17:38:21 +0800] "GET /static/image/common/pn.png HTTP/1.1" 200 592

过滤目标

60.166.12.170 31/May/2013:00:00:02 /forum.php 200 45780

处理后将内容写入到文件20160205.txt

#!/usr/bin/env python  
# - coding:utf - 8 -*-
import re,sys

with open('access_test.log') as f:
  for line in f:
    parseip = re.search(r'(.*?) - - ', line)
    parsetime = re.search(r'
(.∗?)
(.∗?)
', line)
    parseurl = re.search(r' "\w+ (.*?) HTTP/', line)
    parsestatus = re.search(r' HTTP/(.*?)" (.*?) ', line)
    parseTraffic = re.search(r'\d+ \d+', line)

    if parseip and parsetime and parseurl and parsestatus and parseTraffic is None:
      continue
    
    output=sys.stdout
    outputfile=open('20160205.txt','a')
    sys.stdout=outputfile
    print parseip.group(1).split('?')[0] + '\t' + parsetime.group(1).split('?')[0] + '\t' + parseurl.group(1).split('?')[0] + '\t' + parsestatus.group(2) + '\t' + parseTraffic.group(0).split(' ')[1]
    outputfile.close()
    sys.stdout=output


import sys

然后在打算把输出数据写入文件的代码之前加上以下代码

output=sys.stdout
outputfile=open(filename,'w')
sys.stdout=outputfile

上面的filename表示输出文件

程序结束或恢复成正常输出时加上以下代码

outputfile.close()
sys.stdout=output

恢复输出为开始保存的正常输出值

以上这篇python中将正则过滤的内容输出写入到文件中的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 正则表达式入门(初级篇)
Dec 07 Python
python编程实现希尔排序
Apr 13 Python
Python变量和字符串详解
Apr 29 Python
Python3 中把txt数据文件读入到矩阵中的方法
Apr 27 Python
利用Python读取txt文档的方法讲解
Jun 23 Python
浅谈pyqt5中信号与槽的认识
Feb 17 Python
PyCharm2018 安装及破解方法实现步骤
Sep 09 Python
python与mysql数据库交互的实现
Jan 06 Python
解决Python pip 自动更新升级失败的问题
Feb 21 Python
Python2.x与3​​.x版本有哪些区别
Jul 09 Python
Django DRF APIView源码运行流程详解
Aug 17 Python
使用python创建股票的时间序列可视化分析
Mar 03 Python
Python用5行代码写一个自定义简单二维码
Oct 21 #Python
python实现将文件夹下面的不是以py文件结尾的文件都过滤掉的方法
Oct 21 #Python
Python定时发送消息的脚本:每天跟你女朋友说晚安
Oct 21 #Python
用Django写天气预报查询网站
Oct 21 #Python
Django中数据库的数据关系:一对一,一对多,多对多
Oct 21 #Python
python高效过滤出文件夹下指定文件名结尾的文件实例
Oct 21 #Python
Python根据文件名批量转移图片的方法
Oct 21 #Python
You might like
ThinkPHP登录功能的实现方法
2014/08/20 PHP
zen_cart实现支付前生成订单的方法
2016/05/06 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
2018/04/21 PHP
PHP连接SQL server数据库测试脚本运行实例
2020/08/24 PHP
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
2011/09/09 Javascript
jquery struts 验证唯一标识(公用方法)
2013/03/27 Javascript
jQuery的控件及事件(输入控件及回车事件)使用示例
2013/07/25 Javascript
jquery图片放大功能简单实现
2013/08/01 Javascript
javascript使用onclick事件改变选中行的颜色
2013/12/30 Javascript
javascript:void(0)的问题使用探讨
2014/04/10 Javascript
JS实现网页表格自动变大缩小的方法
2015/03/09 Javascript
JavaScript如何获取数组最大值和最小值
2015/11/18 Javascript
全面解析Bootstrap表单使用方法(表单控件状态)
2015/11/24 Javascript
无需 Flash 使用 jQuery 复制文字到剪贴板
2016/04/26 Javascript
移动端横屏的JS代码(beta)
2016/05/16 Javascript
浅谈Angular中ngModel的$render
2016/10/24 Javascript
JS实现焦点图轮播效果的方法详解
2016/12/19 Javascript
js的三种继承方式详解
2017/01/21 Javascript
js实现音乐播放控制条
2017/09/09 Javascript
JS实现提交表单前的数字及邮箱校检功能
2017/11/13 Javascript
JS实现table表格内针对某列内容进行即时搜索筛选功能
2018/05/11 Javascript
React组件对子组件children进行加强的方法
2019/06/23 Javascript
layui 表格操作列按钮动态显示的实现方法
2019/09/06 Javascript
Python制作钉钉加密/解密工具
2016/12/07 Python
Python subprocess模块详细解读
2018/01/29 Python
Python爬虫框架Scrapy基本用法入门教程
2018/07/26 Python
python实时获取外部程序输出结果的方法
2019/01/12 Python
Python多叉树的构造及取出节点数据(treelib)的方法
2019/08/09 Python
详解Python文件修改的两种方式
2019/08/22 Python
mac使用python识别图形验证码功能
2020/01/10 Python
python实现银行实战系统
2020/02/26 Python
python简单实现最大似然估计&scipy库的使用详解
2020/04/15 Python
阿迪达斯荷兰官方网站:adidas荷兰
2018/03/16 全球购物
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
党校培训自我鉴定
2014/02/01 职场文书
春节联欢晚会主持词范文
2014/03/24 职场文书