我正在尝试创建线程端口扫描程序,由于某些原因,以下代码导致程序等待,然后停止,但无输出。我已经用nmap测试了目标,端口80已打开,所以我很确定它是程序而不是目标。
import socket
import threading
import concurrent.futures
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.settimeout(2)
def scan(target,port):
try:
con = s.connect((target,port))
print(f"Port {port} is open")
con.close()
except:
pass
with concurrent.futures.ThreadPoolExecutor(max_workers=100) as executor:
for port in range(1,100):
executor.submit(scan,"hackthissite.org",port)