mirror of
https://github.com/shmilylty/OneForAll.git
synced 2026-08-26 04:47:48 +08:00
添加导出纯子域结果功能
This commit is contained in:
+32
-11
@@ -309,17 +309,7 @@ def check_value(values):
|
||||
return values
|
||||
|
||||
|
||||
def export_all(format, path, datas):
|
||||
"""
|
||||
将所有结果数据导出到一个文件
|
||||
|
||||
:param str format: 导出文件格式
|
||||
:param str path: 导出文件路径
|
||||
:param list datas: 待导出的结果数据
|
||||
"""
|
||||
format = check_format(format, len(datas))
|
||||
timestamp = get_timestring()
|
||||
name = f'all_subdomain_result_{timestamp}'
|
||||
def export_all_results(path, name, format, datas):
|
||||
path = check_path(path, name, format)
|
||||
logger.log('INFOR', f'所有主域的子域结果 {path}')
|
||||
row_list = list()
|
||||
@@ -338,6 +328,37 @@ def export_all(format, path, datas):
|
||||
save_data(path, content)
|
||||
|
||||
|
||||
def export_all_subdomains(alive, path, name, datas):
|
||||
path = check_path(path, name, 'txt')
|
||||
subdomains = set()
|
||||
for row in datas:
|
||||
subdomain = row.get('subdomain')
|
||||
if alive:
|
||||
if not row.get('alive'):
|
||||
continue
|
||||
subdomains.add(subdomain)
|
||||
else:
|
||||
subdomains.add(subdomain)
|
||||
data = '\n'.join(subdomains)
|
||||
save_data(path, data)
|
||||
|
||||
|
||||
def export_all(alive, format, path, datas):
|
||||
"""
|
||||
将所有结果数据导出到一个文件
|
||||
|
||||
:param str format: 导出文件格式
|
||||
:param str path: 导出文件路径
|
||||
:param list datas: 待导出的结果数据
|
||||
"""
|
||||
format = check_format(format, len(datas))
|
||||
timestamp = get_timestring()
|
||||
name = f'all_subdomain_result_{timestamp}'
|
||||
export_all_results(path, name, format, datas)
|
||||
export_all_subdomains(alive, path, name, datas)
|
||||
|
||||
|
||||
|
||||
def dns_resolver():
|
||||
"""
|
||||
dns解析器
|
||||
|
||||
+1
-1
@@ -236,7 +236,7 @@ class OneForAll(object):
|
||||
if self.domains:
|
||||
for self.domain in self.domains:
|
||||
self.main()
|
||||
utils.export_all(self.format, self.path, self.datas)
|
||||
utils.export_all(self.alive, self.format, self.path, self.datas)
|
||||
else:
|
||||
logger.log('FATAL', f'Failed to obtain domain')
|
||||
logger.log('INFOR', f'Finished OneForAll')
|
||||
|
||||
Reference in New Issue
Block a user