📜  socket python 如何检查服务器是否存活 - Python (1)

📅  最后修改于: 2023-12-03 15:20:10.706000             🧑  作者: Mango

Python中如何检查服务器是否存活

在Python中使用socket模块可以很方便地实现检查服务器是否存活的功能。下面是一个简单的示例代码:

import socket

def check_server(ip, port):
    """
    检查服务器是否存活
    """
    try:
        socket.create_connection((ip, port), timeout=5)
        return True
    except socket.error:
        return False

if __name__ == '__main__':
    is_alive = check_server('127.0.0.1', 80)
    if is_alive:
        print('服务器存活')
    else:
        print('服务器不存活')

代码解释:

  1. 引入socket模块
  2. 定义了一个函数check_server(ip, port),该函数接收两个参数,分别是要检查的服务器IP地址和端口号。函数中使用socket.create_connection()函数创建一个TCP连接,如果成功则返回True,否则返回False。
  3. if __name__ == '__main__':中调用check_server()函数进行检查,输出服务器是否存活的结果。

注意:timeout参数设置超时时间,默认为socket模块的全局超时时间。如果需要设置不同的超时时间,可以在connect()函数中指定。同时,这里的检查方式是基于TCP连接的,所以只适用于检查TCP服务,如果需要检查UDP服务可以使用UDP socket。