python中监听端口并捕获数据

Man*_*eph 7 python

我正在使用 C 语言的应用程序,它将连续数据发送到指定端口。我可以使用“Putty”(使用 telnet 127.0.0.1 端口 30003)查看传入数据。

现在我想捕获该数据进行处理。请建议如何在 python 中做到这一点?

数据以每秒 5 行的速度逐行流动。我应该逐行读取数据进行处理并将其显示在窗口中。

小智 14

这听起来像是家庭作业……你还没有尝试过去做。

在 python 中,为了接收和发送数据(并且肯定是交换数据),我们使用名为socket. 您需要两个脚本,一个服务器端脚本(用 C 语言编写)和一个客户端脚本。

# client example

import socket, time
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('localhost', 5000))
while True:
    time.sleep(5)
    data = client_socket.recv(512)
    if data.lower() == 'q':
        client_socket.close()
        break

    print("RECEIVED: %s" % data)
    data = input("SEND( TYPE q or Q to Quit):")
    client_socket.send(data)
    if data.lower() == 'q':
        client_socket.close()
        break
Run Code Online (Sandbox Code Playgroud)

这是一个客户端脚本示例,每 5 秒接收一次数据并将其打印出来。我希望您可以对其进行调整以满足您的需求。

来源:基本 Python 客户端套接字示例