python应用系列教程——python使用scapy监听网络数据包、按TCPIP协议进行解析

python 应⽤系列教程——python 使⽤scapy 监听⽹络数据包、按TCPIP 协议进⾏解析
分享⼀个朋友的⼈⼯智能教程。零基础!通俗易懂!风趣幽默!还带黄段⼦!⼤家可以看看是否对⾃⼰有帮助:
全栈⼯程师开发⼿册 (作者:栾鹏)
python使⽤监听抓取⽹络数据包。
scapy具有模拟发送数据包、监听解析数据包、互联⽹协议解析、等多种⽤处。这⾥我们只来说⼀下scapy监听数据包,并按照不同的协议进⾏解析。
布艺产品⾸先需要安装scapy包,
python库的安装⽅法请参考
羚羊木雕教学设计scapy也是基于libcap的交互式⽹络分析⼯具,所以还要安装winpcap软件,为监控⽹卡提供接⼝。
scapy由于功能丰富,内容较多,所以在导⼊时会⽐较慢。在pycharm中可以导⼊,pydev中导⼊卡死。
如果导⼊卡死,可以把⾃⼰编写的python程序,放在scapy库的根⽬录下。⽐如scapy库在C:\Python27\
Scripts\scapy-master下,则在成功安装scapy库以后,可以将⾃⼰的py程序放在这个⽂件夹下执⾏。
2017年高考试题全国卷python2.7下#coding:utf-8#由于scapy 没有⾃动将库⽬录添加到python 系统⽬录内,所以这⾥先查看模块⽬录在哪⾥,再添加到系统搜索路径下from scapy.all import *  #导⼊scapy 较慢,如果⽆法导⼊,就将py ⽂件放到scapy 库,C:\Python27\Scripts\scapy-master ⽂件夹下执⾏print("sucess import")def pack_callback(packet):#    print packet.show()  #可以查看包的结构属性等    if packet["TCP"].payload:  #检测tcp 负载是否有数据,有Ethernet 、IP 、TCP ⼏个阶段        appstr=str(packet["TCP"].payload)  #将tcp 负载字节数组转化为字符串        #匹配⾃定义正则表达式        pat = 'Content-Type:(.*)[;\r\n]'  #创建⼀个正则表达式,在字符串中匹配这个正则表达式,这⾥以Content-Type:开头,以;或\r 结尾的        pat = repile(pat);  #使⽤正则表达式,创建正则对象        m = re.search(pat,appstr)  #查询是否存在匹配的⼦字符串        if m:            ups())  #打印需要()输出的内容# 嗅探数据包,参数:过滤器,回调函数,⽹卡,个数ifacestr="HUAWEI Mobile Connect - Network Card"  #⽹⼝名称,这⾥要换成⾃⼰的⽹卡名称filterstr="tcp port 110 or tcp port 8080 or tcp port 80"  #过滤条件,为空表⽰不限制sniff(filter=filterstr,prn=pack_callback,iface=ifacestr,count=0)  #count 等0表⽰⼀直监听,要想监听数据包,需要⾸先安装winpcap
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
堂堂网
18
19
在程序中ifacestr参数为你要监听的⽹卡的名称,为下图中红⾊标记部分
麦子店街道办事处python3.6下
1
惠从冰还没有安装成功

本文发布于:2024-09-22 21:16:07,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/137033.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据包   监听   是否   安装   需要   程序   匹配   负载
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议