Python实现的对本地host127.0.0.1主机进行扫描端口功能示例

yipeiwu_com6年前Python基础

本文实例讲述了Python实现的对本地host127.0.0.1主机进行扫描端口功能。分享给大家供大家参考,具体如下:

前面一篇《Python IP端口扫描工具类》详细介绍了端口扫描功能,这里分析一下针对本地localhost端口扫描的方法。

具体代码如下:

#!/usr/local/bin/python
#-*- coding: UTF-8 -*-
#端口扫描器
import socket
import thread
import time
socket.setdefaulttimeout(3) #设置了全局默认超时时间
def socket_port(ip,PORT): #扫描开放端口
  try:
    if PORT>=65535:
      print u"端口扫描结束0-65535"
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    #s.settimeout(float(1)) #延时5S
    #s.connect((ip,PORT))
    result=s.connect_ex((ip,PORT))
    if(result==0):
      print ip,u":",PORT,u"端口开放"
    s.close()
  except:
    print u"扫描端口异常2"
def IP__port(data): #扫描端口
  try:
    #data="127.0.0.1"
    t=time.time()
    for i in range(0,1000 + 1):  #65535
      thread.start_new_thread(socket_port,(data,int(i)))
      time.sleep(0.003) #确保先运行Seeker中的方法
    print u'扫描端口完成用时 time:%f' % (time.time()-t)
  except:
    print u"扫描端口异常1"
if __name__=='__main__':
  #socket_port("127.0.0.1",21) #扫描开放端口
  IP__port("127.0.0.1") #多线程

运行结果如下:

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python进程与线程操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python统计列表中的重复项出现的次数的方法

本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴。具体方法如下: 对一个列表,比如[1,2,2,2,2,3,3,3,4,4...

Python hexstring-list-str之间的转换方法

在Python操作数据内容时,多数情况下可能遇到下面3种类型的数据处理: hexstring 如:'1C532145697A8B6F' str 如:'\x1C\x53\x21\x45\x...

python实现根据指定字符截取对应的行的内容方法

工作中遇到的,在一个.c文件中有很多函数,这个.c是自动生成的,需要将所有的函数通过extern放到.h中,每个函数都是UINT32 O_开头,通过正则表达式进行字符匹配以及通过line...

解决python selenium3启动不了firefox的问题

解决python selenium3启动不了firefox的问题

selenium3.0之后的版本的就不支持直接打开火狐浏览器,启动火狐浏览器报错,如下图,要想运行就需要我们单独装上驱动。 3.0之前的版本,是可以直接打开火狐浏览器的。 解决办法:...

pip 错误unused-command-line-argument-hard-error-in-future解决办法

在我的Mac Air上,用pip安装一些Python库时,偶尔就会遇到一些报错,关于“unused-command-line-argument-hard-error-in-future”...