python监听端口并捕获数据
时间: 2024-02-17 20:35:51 浏览: 44
以下是一个简单的Python程序,可以监听指定端口并捕获传入的数据:
```python
import socket
# 创建一个TCP/IP套接字
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定到指定端口
server_address = ('localhost', 10000)
sock.bind(server_address)
# 开始监听传入的连接
sock.listen(1)
while True:
print('等待连接...')
connection, client_address = sock.accept()
print('连接来自', client_address)
# 接收并打印客户端发送的数据
data = connection.recv(1024)
print('接收到数据: {!r}'.format(data))
# 发送响应数据
response = '确认收到: {}'.format(data.decode())
connection.sendall(response.encode())
# 关闭连接
connection.close()
```
这个程序会监听本地的10000端口,并在收到连接请求时打印客户端地址。接着,它会接收客户端发送的数据,并将其打印出来。然后,程序会发送一个响应数据给客户端,并关闭连接。
要测试这个程序,可以使用telnet命令连接到本地的10000端口,然后发送一些数据:
```
$ telnet localhost 10000
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Hello, world!
确认收到: Hello, world!
Connection closed by foreign host.
```
你应该会看到类似上面这样的输出,其中程序会打印出收到的数据并发送一个响应。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)