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实现逆波兰计算表达式实例详解
May 06 Python
Python中的推导式使用详解
Jun 03 Python
Python实现图片转字符画的示例
Aug 22 Python
python如何为被装饰的函数保留元数据
Mar 21 Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
May 11 Python
Python selenium抓取微博内容的示例代码
May 17 Python
在pycharm上mongodb配置及可视化设置方法
Nov 30 Python
python实现Excel文件转换为TXT文件
Apr 28 Python
Python之Numpy的超实用基础详细教程
Oct 23 Python
python中 _、__、__xx__()区别及使用场景
Jun 30 Python
如何用Matplotlib 画三维图的示例代码
Jul 28 Python
anaconda python3.8安装后降级
Jun 11 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
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
overlord人气高涨,却被菲利普频繁举报,第四季很难在国内上映
2020/05/06 日漫
PHP自动识别字符集并完成转码详解
2013/08/02 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
PHP实现随机发扑克牌
2020/04/22 PHP
通过隐藏option实现select的联动效果
2009/11/10 Javascript
javascript字符串拼接的效率问题
2010/12/25 Javascript
js几秒以后倒计时跳转示例
2013/12/26 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
设置jQueryUI DatePicker默认语言为中文
2016/06/04 Javascript
nodejs基础应用
2017/02/03 NodeJs
ReactNative页面跳转Navigator实现的示例代码
2017/08/02 Javascript
微信小程序表单弹窗实例
2018/07/19 Javascript
JavaScript中concat复制数组方法浅析
2019/01/20 Javascript
nodejs文件夹深层复制功能
2019/09/03 NodeJs
JavaScript图像放大镜效果实现方法详解
2020/06/28 Javascript
解决element-ui里的下拉多选框 el-select 时,默认值不可删除问题
2020/08/14 Javascript
python使用BeautifulSoup分页网页中超链接的方法
2015/04/04 Python
解决python3爬虫无法显示中文的问题
2018/04/12 Python
Python中Proxypool库的安装与配置
2018/10/19 Python
pygame游戏之旅 游戏中添加显示文字
2018/11/20 Python
详解python的四种内置数据结构
2019/03/19 Python
利用Python查看微信共同好友功能的实现代码
2019/04/24 Python
python flask 如何修改默认端口号的方法步骤
2019/07/12 Python
CSS3中的transform属性进行2D和3D变换的基本用法
2016/05/12 HTML / CSS
HTML5 画布canvas使用方法
2016/03/18 HTML / CSS
英国最大的电子零件及配件零售商:Partmaster
2017/04/24 全球购物
新锐科技Java程序员面试题
2016/07/25 面试题
如何写一份好的自荐信
2014/01/02 职场文书
感恩寄语大全
2014/04/11 职场文书
小班上学期评语
2014/05/05 职场文书
团队激励口号
2014/06/06 职场文书
城南旧事电影观后感
2015/06/16 职场文书
英语读书笔记
2015/07/02 职场文书
学习社交礼仪心得体会
2016/01/22 职场文书
Python数据类型最全知识总结
2021/05/31 Python