#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Author:1stPeak
import requests #导入requests模块
def read_file(filepath): #定义一个read_file函数,参数为filepath
f = open(filepath,encoding='utf-8').readlines() #打开爆破的字典文件,以行显示 ,并将返回字典文件赋给f #encoding='utf-8'用来解决:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa3 in position 4680: ill
return f #返回f
def mulubp():
mulu = read_file("PHP.txt") #打开目录爆破字典PHP.txt,赋给mulu
for i in mulu: #遍历mulu
mulu1 = i.strip("\n") #删除PHP.txt中的换行,因为txt中没有换行,但是for循环执行后,会有换行,也就是新的空白的一行出现
mulu2 = mulu1.strip("/") #删除PHP.txt中每行开始的/ (这个视情况而定,看你们txt里的字典是怎么设置的)
#print(mulu1) #测试
#print(mulu2) #测试
url="http://www.cztgi.edu.cn/"+str(mulu2)+"" #设置url
#print(url) #测试
response = requests.get(url) #get请求url,值赋给response
response2=response.url #返回请求后新的url赋给response2
if response.status_code==200 and ".psp" not in response2: #当访问response时返回的状态码为200并且response2中没有.psp,执行以下代码,否则,else
print("[+] "+str(mulu2)+"存在")
print("[+] "+str(mulu2)+"存在",file=f) #将print出的数据输送到f文件(爆破结果.txt)中
else:
print("[+]:"+str(mulu2)+"不存在")
if __name__ == '__main__':
filename = '爆破结果.txt' #创建一个文件名为爆破.txt
with open(filename, 'w') as f: #以写入的方式打开爆破.txt,并赋给f #如果filename不存在会自动创建,'w'表示写数据,写之前会清空文件中的原有数据
f.write(mulubp()) #调用mulubp()函数并将mulubp()函数运行的符合条件值写入到f中
f.close() #关闭文件的写入
Python--简单的目录扫描脚本
最新推荐文章于 2023-02-04 20:12:49 发布