• 技术文章 >Python技术 >Python高级

    Python实现远程端口监控实例

    PythonPython2019-06-24 10:47:21原创3032
    python循环监控远程端口

    建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。

    在ip.txt中每行一个ip地址和端口号,代码可循环监控这些ip地址的指定端口是否正常

    #!/usr/bin/env python
    # -*- coding: gbk -*-
    import socket,time
    while 1:
      file_obj = open('ip.txt')
      for line in file_obj:
        try:
          sc=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
          ip = line.split()[0]
          port = int(line.split()[1])
          print ip,port
          #设置超时时间(0.0)
          sc.settimeout(2)
          sc.connect((ip,port))
          timenow=time.localtime()
          datenow = time.strftime('%Y-%m-%d %H:%M:%S', timenow)
          logstr="%s:%s 连接成功->%s \n" %(ip,port,datenow)
          print logstr
          sc.close()
        except:
          file = open("log.txt", "a")
          timenow=time.localtime()
          datenow = time.strftime('%Y-%m-%d %H:%M:%S', timenow)
          logstr="%s:%s 连接失败->%s \n" %(ip,port,datenow)
          print logstr
          file.write(logstr)
          file.close()
      print "sleep 10....."
      time.sleep(10)

    ip.txt格式文件:

    192.168.1.100 33001
    192.168.1.101 33001
    专题推荐:python
    品易云
    上一篇:详解Python中的Thread线程模块 下一篇:Python与Shell脚本的交互

    相关文章推荐

    • Python中的Cookie模块有什么功能?• Python中的zip函数怎么用?• Python中怎么使用with语句?• Python怎么实现模式匹配

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网