[英]HTTPResponse packet in Scapy only has partial response
我有以下代码来使用 Scapy 嗅探 HTTPRequest 和 HTTPResponse:
from scapy.all import *
from scapy.layers.http import *
from bs4 import BeautifulSoup
def inspect(a):
if HTTPRequest in a:
print("\n{} ----HTTPRequest----> {}:{}:\n{}".format(a[IP].src, a[IP].dst, a[IP].dport, str(bytes(a[TCP].payload))))
if HTTPResponse in a:
response = str(bytes(a[TCP].payload))
soup = BeautifulSoup(response, "html.parser")
print("\n{} ----HTTPResponse----> {}:{}:\n{}".format(a[IP].src, a[IP].dst, a[IP].dport, soup))
sniff(prn=inspect)
但是响应仅包含部分 HTTP 响应。 我如何获得其余的回复。
请指教。
因为 HTTP 帧是在多个 TCP 帧上分段的。 您只需要
>>> sniff(prn=inspect, session=TCPSession)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.