python怎么接收udp报文_python 处理传输层的报文 TCP/UDP

from scapy.all import *alarm_map= {"211": "未系安全带", "205": "疲劳驾驶", "206": "疲劳驾驶", "208": "抽烟", "209": "出现异常"}defscan(target, port):

has_no_connect=TruewhileTrue:#根据接口进行监听报文

#接口获取由 IFACES 决定

try:#sniff开始获取报文,iface是接口,filter可以选择过滤报文类型, count为一次性获取多少个pkt

pkt = sniff(iface=IFACES.dev_from_index(12), filter="udp", count=1)#每个pkt格式类型于YAML,如果没有IP信息则代表这个包不完整

if pkt[0][IP].src == "192.168.43.1":ifhas_no_connect:#展示建立连接的第一个UDP包

pkt[0].show()if Raw inpkt[0]:

has_no_connect=False#load的值为bytes类型

body =pkt[0][Raw].loadif b'alarm":2' inbody:

result=json.loads(body.decode())if str(result.get('dms').get('alarm')) inalarm_map.keys():

now_time= datetime.datetime.now().strftime('%Y%m%d%H%M%

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值