Python を使用してネットワーク ポートからデータを読み取る

Pythonでは、ソケットモジュールを使用することでネットワークポートのデータを読み取ることができます。以下はTCPポートのデータを読み取る例です。

import socket

# 创建一个socket对象
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 连接到指定的主机和端口
server_address = ('localhost', 8080)
sock.connect(server_address)

try:
    # 发送数据
    message = 'Hello, server!'
    sock.sendall(message.encode())

    # 接收数据
    data = sock.recv(1024)
    print('Received:', data.decode())

finally:
    # 关闭socket连接
    sock.close()

まずソケットオブジェクトを作成し、connect()メソッドで指定のホストとポート番号に接続します。その後sendall()メソッドでサーバ側にデータを送り、recv()メソッドでサーバからの応答データを受信します。最後にclose()メソッドでソケット接続を切断します。

なお、上記サンプルは TCP プロトコルでのみ動作します。UDP ポートのデータを読み込む場合は、socket.SOCK_STREAM を socket.SOCK_DGRAM に置き換えてください。

bannerAds