补充知识:python做在域名作为关键字的POST报文集合分类

将报文按域名分成不同的集合,而后写入excel,主要使用了字典数据结构

输入内容:

[域名,post报文(一个域名有多条,在不同行),域名类型]

输出内容:

[域名,POST报文集合,域名类型]

#-*- encoding:UTF-8 -*-import openpyxlfrom openpyxl import load_workbookfrom openpyxl import Workbookimport numpy as npimport pandas as pdimport restrinfo = re.compile('[ ]+')book=load_workbook('ex2.xlsx','utf-8')sheet=book.worksheets[0]rows=sheet.max_rowcols=sheet.max_columnPost={}Type={}for i in range(2,rows+1):#向字典里添加元素 dn=sheet.cell(i,1).value pv=sheet.cell(i,2).value tv=sheet.cell(i,3).value if Post.get(dn)==None:#第一次遇到@个域名 Post[dn]=pv Type[dn]=tv else: Post[dn]+='\n'+pvwb=Workbook()sh=wb.worksheets[0]#输出表格for i in range(2,rows+1):#从字典中取出内容存入excel dn=sheet.cell(i,1).value if i==2: Post[dn]=Post[dn].replace('/',' ').replace(':',' ') Post[dn]=Post[dn].replace('(',' ').replace(')',' ') Post[dn]=Post[dn].replace('*',' ').replace(';',' ') Post[dn]=Post[dn].replace('\t',' ').replace('\n',' ') Post[dn]=Post[dn].replace('$',' ').replace('@',' ') Post[dn]=Post[dn].replace('=',' ').replace('&',' ') Post[dn]=Post[dn].replace(',',' ').replace('?',' ') Post[dn]=strinfo.sub(' ',Post[dn]) sh.append([dn,Post[dn],Type[dn]]) else: if dn!=sheet.cell(i-1,1).value:  Post[dn]=Post[dn].replace('/',' ').replace(':',' ')  Post[dn]=Post[dn].replace('(',' ').replace(')',' ')  Post[dn]=Post[dn].replace('*',' ').replace(';',' ')  Post[dn]=Post[dn].replace('\t',' ').replace('\n',' ')  Post[dn]=Post[dn].replace('$',' ').replace('@',' ')  Post[dn]=Post[dn].replace('=',' ').replace('&',' ')  Post[dn]=Post[dn].replace(',',' ').replace('?',' ')  Post[dn]=strinfo.sub(' ',Post[dn])  sh.append([dn,Post[dn],Type[dn]]) else:  continuereplace('
','')wb.save('out.csv')

以上这篇python构造IP报文实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


  • 上一条:
    python TCP包注入方式
    下一条:
    python3通过udp实现组播数据的发送和接收操作
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客