python循环监控远程端口的方法

yipeiwu_com6年前Python基础

本文实例讲述了python循环监控远程端口的方法。分享给大家供大家参考。具体如下:

在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循环语句中else的用法总结

前言 本文讨论Python的for…else和while…else等语法,这些是Python中最不常用、最为误解的语法特性之一。 Python中的for、while等循环都有一个可选的e...

解决Pycharm运行时找不到文件的问题

解决Pycharm运行时找不到文件的问题

这是解释器设置问题,在设置里找到interpreter 找到合适的目录就可以了。因为重装了python导致pycharm找不到路径了。 另外,pycharm找不到tensorflow包的...

python3中类的继承以及self和super的区别详解

python中类的继承: 子类继承父类,及子类拥有了父类的 属性 和 方法。 python中类的初始化都是__init__()。所以父类和子类的初始化方式都是__init__(),但是如...

50行Python代码获取高考志愿信息的实现方法

50行Python代码获取高考志愿信息的实现方法

最近遇到个任务,需要将高考志愿信息保存成Excel表格,BOSS丢给我一个网址表格之后就让我自己干了。虽然我以前也学习过Python编写爬虫的知识,不过时间长了忘了,于是摸索了一天之后终...

PyQt5每天必学之QSplitter实现窗口分隔

QSplitter使用户可以通过拖动子面板的边界控制子面板的大小。在我们的例子中,我们使用了两个QSplitter 对三个QFrame 控件进行了分隔。 #!/usr/bin/pyt...