Python端口侦听器(如NC)

Python端口侦听器(如NC),python,Python,因此,我想制作一个类似Netcat(nc-l-v-p2121)的Python端口侦听器。我环顾四周,没有找到我要找的东西。我只希望能够通过CLI参数提供一个端口,并在该端口上侦听(python listen.py 2121)。如果有人能给我指出正确的方向,我将不胜感激。查看模块,那里有很多示例。查看模块,那里有很多示例。从模块开始(它是一个内置的) 要设置侦听套接字,请执行以下操作: port = 1234 s = socket.socket() s.bind(("", port)) s.li

因此,我想制作一个类似Netcat(nc-l-v-p2121)的Python端口侦听器。我环顾四周,没有找到我要找的东西。我只希望能够通过CLI参数提供一个端口,并在该端口上侦听(python listen.py 2121)。如果有人能给我指出正确的方向,我将不胜感激。

查看模块,那里有很多示例。

查看模块,那里有很多示例。

从模块开始(它是一个内置的)

要设置侦听套接字,请执行以下操作:

port = 1234

s = socket.socket()
s.bind(("", port))
s.listen(1)

一旦套接字正在侦听,您就可以使用
socket.accept()
,在套接字上接受连接,它将返回一个元组,其中包含连接的套接字及其连接的地址。

从模块(内置)开始

要设置侦听套接字,请执行以下操作:

port = 1234

s = socket.socket()
s.bind(("", port))
s.listen(1)

套接字监听后,您可以使用
socket.accept()
接受套接字上的连接,它将返回一个元组,其中包含连接的套接字及其连接地址。

回答得好。但是请注意,如果您想要
nc-kl
而不仅仅是
nc-l
,那么您需要某种并发性,无论是事件循环(例如,围绕
选择
)还是为每个
接受
启动后台线程。另外,如果您希望能够从
stdin
以及套接字(就像
nc
一样)中读取数据,那么即使是
nc-l
,您也已经需要并发了。回答得很好。但是请注意,如果您想要
nc-kl
而不仅仅是
nc-l
,那么您需要某种并发性,无论是事件循环(例如,围绕
选择
)还是为每个
接受
启动后台线程。此外,如果您希望能够从
stdin
以及套接字中读取数据(就像
nc
一样),那么即使是对于
nc-l
,您也需要并发。