import threading
import requests
name = input("需要扫描的域名 ")
max_threads = int(input("最大可以使用的线程数量,如果启动最大线程,请输入0 "))
max=threading.BoundedSemaphore(max_threads)
with open (r'这里写自己的域名字典的路径' ,'r') as f :
file = f.readlines()
for i in range(len(file)) :
file[i] = 'https://' + file[i].replace("\n","") + '.' + name
def maxfa(url) :
try :
res = requests.Session().get(url).status_code
if res == 200 :
with open (r'存在的域名要写入的文件路径','a') as f :
f.write(url + '\n')
except :
...
def min(url) :
try :
res = requests.Session().get(url).status_code
if res == 200 :
with open (r'存在的域名要写入的文件路径','a') as f :
f.write(url + '\n')
except :
...
finally :
max.release()
def main():
for i in file :
if max_threads == 0 :
threading.Thread(target=maxfa,args=(i,)).start()
else :
max.acquire()
threading.Thread(target=min,args=(i,)).start()
main()
写的不好,大佬们轻喷。