在Python中,可以使用socket模块来监听端口,以下是详细的步骤和ref="https://xwenw.com/tag/%e4%bb%a3%e7%a0%81%e7%a4%ba%e4%be%8b" target="_blank">代码示例:

python 如何监听端口python 如何监听端口

图片来源网络,侵删)

1、导入socket模块

import socket

2、创建一个套接字对象

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

这里使用socket.AF_INET表示使用IPv4地址,socket.SOCK_STREAM表示使用TCP协议。

3、绑定IP地址和端口号

server_address = ('localhost', 8080)  # 可以替换为你想要监听的IP地址和端口号
server_socket.bind(server_address)

将套接字绑定到指定的IP地址和端口号上。

4、监听连接请求

server_socket.listen(5)  # 设置最大连接数为5

设置最大连接数,当有多个客户端同时连接时,服务器会按照先来先服务的原则处理连接请求。

5、接受客户端连接并处理请求

while True:
    print('等待客户端连接...')
    client_socket, client_address = server_socket.accept()  # 接受客户端连接
    print('客户端已连接:', client_address)
    # 在这里可以添加处理客户端请求的代码逻辑
    # ...
    client_socket.close()  # 关闭与客户端的连接

通过server_socket.accept()方法接受客户端的连接请求,返回一个新的套接字对象和客户端的地址信息,可以在循环中处理每个客户端的请求,并在处理完成后关闭与客户端的连接。

6、完整代码示例:

import socket
def main():
    server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    server_address = ('localhost', 8080)  # 可以替换为你想要监听的IP地址和端口号
    server_socket.bind(server_address)
    server_socket.listen(5)  # 设置最大连接数为5
    print('服务器正在监听端口...')
    while True:
        print('等待客户端连接...')
        client_socket, client_address = server_socket.accept()  # 接受客户端连接
        print('客户端已连接:', client_address)
        # 在这里可以添加处理客户端请求的代码逻辑
        # ...
        client_socket.close()  # 关闭与客户端的连接
if __name__ == '__main__':
    main()

运行以上代码,服务器将会开始监听指定的IP地址和端口号,等待客户端的连接请求。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。