Scapy新手求助:提取追踪中域名并去除b''标识的方法
Scapy获取DNS域名去除字节标识的方法
你看到的b'xxx'是Python里**字节对象(bytes)**的显示格式,不是字符串内容的一部分,所以用切片[2:]肯定没用,得把字节转成字符串才行:
直接用
decode()方法转换:print(packet[DNS].qd.qname.decode())执行后就会输出
f1tata-b.pc.bitgravity.com.,没有前面的b''标识了。如果需要去掉域名末尾的点(DNS查询名默认带末尾根域的点),可以再加个
rstrip('.'):print(packet[DNS].qd.qname.decode().rstrip('.'))这样输出就是更干净的
f1tata-b.pc.bitgravity.com。
原理很简单:Scapy返回的qd.qname是字节类型数据,decode()会把它转换成Python的字符串类型,自然就不会显示b''前缀了。
内容的提问来源于stack exchange,提问作者Nicolas Pellerin
相关产品推荐
相关产品推荐

