本文实例为大家分享了python 3.6.7端口扫描器的具体代码,供大家参考,具体内容如下
环境:python 3.6.7
# -*- coding: utf-8 -*-
import socket
import threading
import argparse
lock = threading.Lock()
openNum = 0
threads = []
def portscan(ip, port):
global openNum
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((ip, port))
lock.acquire()
openNum = openNum + 1
print('[+] %d open' %port)
lock.release()
s.close()
except:
pass
def main():
parse = argparse.ArgumentParser()
parse.add_argument('-H', dest = 'ip', type = str)
args = parse.parse_args()
ip = args.ip
socket.setdefaulttimeout(3)
for port in range(1, 1024):
t = threading.Thread(target = portscan, args = (ip, port))
threads.append(t)
t.start()
for t in threads:
t.join()
print('[*] The host:%s scan is complete!' %(ip))
print('[*] A total of %d open port ' %(openNum))
if __name__ == '__main__':
main()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持天达云。