python socket 埠測試
- 2020 年 1 月 6 日
- 筆記
#coding:utf8 import socket,time,re,thread,os timeout=3 socket.setdefaulttimeout(timeout)
def socket_port(ip,port): s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) result=s.connect_ex((ip,port)) if result==0: lock.acquire() print '%s'%ip+',%s埠通過'%port+'n' lock.release() s.close() else: print '%s'%ip+',%s埠異常'%port+'n'
def ip_scan(ip): print""" ***************************************** 埠號為 21,22,23,3389,1521,3940 ***************************************** """ try: print '開始掃描 %s'%ip list1=[21,22,23,3389,1521,3940,] start_time=time.time() for i in list1: thread.start_new_thread(socket_port,(ip,int(i))) print "掃描埠完成,總共用時:%.2f"%(time.time()-start_time)+'n' except: print "掃描IP出錯"
if __name__=='__main__': url=open('C:UsersJiaDesktopIP,Port.txt','r') url1=url.read() url2=re.findall(r'[d]+.+[^W]',url1) url.close() for x in url2: lock=thread.allocate_lock() ip_scan(x) time.sleep(5)