用scapy解析出pcap文件的http报文

p.show函数可以分层次打印pcap文件的内容
例程序1:

#encoding=utf-8
import scapy.all as scapy
'''
try:
    # This import works from the project directory
    import scapy_http.http
except ImportError:
    # If you installed this package via pip, you just need to execute this
    from scapy.layers import http
'''
packets = scapy.rdpcap("/home/amos/learn_data/tump_http.pcap")  # 读取pcap文件
'''
rdpcap(filename, count=-1)
Read a pcap file and return a packet list
count: read only <count> packets
'''
print packets[46].show()

输出结果:

[ Ethernet ]

dst = 00:19:21:11:2e:90
src = 48:0f:cf:38:05:e4
type = 0x800

[ IP ]

 version   = 4L
 ihl       = 5L
 tos       = 0x0
 len       = 524
 id        = 6597
 flags     = DF
 frag      = 0L
 ttl       = 64
 proto     = tcp
 chksum    = 0xf246
 src       = 219.245.186.241
 dst       = 219.245.186.3
 \options   \

[ TCP ]

    sport     = 57447
    dport     = http
    seq       = 1199195183
    ack       = 1123214974
    dataofs   = 8L
    reserved  = 0L
    flags     = PA
    window    = 501
    chksum    = 0x2edf
    urgptr    = 0
    options   = [('NOP', None), ('NOP', None), ('Timestamp', (1040357825, 1152646))]

[ Raw ]

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值