Python:导致 WinError 10013 的原始套接字

Python: Raw socket causing WinError 10013

我正在创建一个数据包嗅探器(是的,使用 socket 的困难方法)并使用以下代码:

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
while True:
    print(s.recvfrom(2048))

出现此错误:OSError: [WinError 10013] An attempt was made to access a socket in a way forbidden by its access permissions。 通过删除不同的东西,我确定使用原始套接字 (socket.SOCK_RAW) 是问题所在,但别无选择。有人可以解释为什么我会收到此错误以及如何消除它吗?

确保文件正在 运行 与管理员。