python 读入一部分_python工具 - 读取文件的部分指定内容并输出到外置窗口

一、使用场景

某些配置文件里有一些特定的字符,而这些字符恰巧需要我们采集出来,然后输出到另外一个窗口做展示时,可以使用该工具。

本例的演示则提取配置文件中的【姓名:黄蓉 女 九阴真经、姓名:郭靖 男 弹指神功】两行读取出来,读取其他内容也可以,更改相应参数即可。

二、实验文件

测试脚本:fielread.py

配置文件:john.conf

三、测试脚本代码

#! /usr/bin/env python3

#-*- coding:UTF-8 -*-

from tkinter import *import tkinter

ss= input('请输入搜索内容的开始首字符:')

es= input('请输入搜索内容的结束首字符:')

fp= input('请输入要搜索文件的路径:')

def fetch(startStr,endStr,filePath):

newLi=[]

with open(filePath,'r',encoding='utf-8') asf :

flag=Falsefor line inf:ifline.strip().startswith(startStr):

flag=Trueifline.strip().startswith(endStr):

flag=Falseifflag and line.strip():

newLi.append(line.strip())returnnewLi

info=fetch(ss,es,fp) # 调用fetch函数进行内容匹配,结果返回列表保存到info中

# [1]控制台打印输出

result= '\n'.join(info)

print(result)

# [2]alert弹窗打印输出

root=Tk() # 创建窗口对象的背景颜色

new_info=Listbox(root)for item ininfo:

new_info.insert(0,item)

new_info.pack()

root.mainloop()

四、配置文件内容

#

# This fileispart of John the Ripper password cracker,

# Copyright (c)1996-2006,2008-2013by Solar Designer

#

#voidinit()

{

password_length= 16; /*Change this to match config*/

intc, i;

c= '0'; i = 0; while (c <= '9') numbers[i++] = c++;

c= 'a'; i = 0; while (c <= 'z') lowers[i++] = c++;

c= 'A'; i = 0; while (c <= 'Z') uppers[i++] = c++;/*symbols*/i= 0;

symbols[i++] = '!'; symbols[i++] = '@'; symbols[i++] = '#'; symbols[i++] = '$';

symbols[i++] = '%'; symbols[i++] = '^'; symbols[i++] = '&'; symbols[i++] = '*';

symbols[i++] = '('; symbols[i++] = ')'; symbols[i++] = '~'; symbols[i++] = '-';

boundaries_charclass[i++] = 536870912; boundaries_charclass[i++] = 1073741824;

boundaries_charclass[i++] = 1610612736; boundaries_charclass[i++] = 2147483647;

姓名:黄蓉 女 九阴真经

姓名:郭靖 男 弹指神功

备注:

boundaries_numbers= 214748365boundaries_numbers= 644245095boundaries_numbers= 1073741824boundaries_numbers= 1503238554boundaries_numbers= 1932735284boundaries_letters[i++] = 82595525; boundaries_letters[i++] = 165191050;

boundaries_letters[i++] = 247786575; boundaries_letters[i++] = 330382100;

boundaries_letters[i++] = 412977625; boundaries_letters[i++] = 495573150;

}

# End of john.conf file.

# Keepthis comment, and blank line above it, to make sure a john-local.conf

# that does not end with \nis properly loaded.

五、执行效果

Console:

请输入搜索内容的开始首字符:姓名

请输入搜索内容的结束首字符:备注

请输入要搜索文件的路径:./john.conf

姓名:黄蓉 女 九阴真经

姓名:郭靖 男 弹指神功

799698-20170526135628122-1819123908.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值