def save_brute_dict(path, data): if not utils.save_data(path, data): logger.log('FATAL', '保存生成的字典出错') exit(1)
def save_subdomains(save_path, subdomain_list): logger.log('DEBUG', f'Saving resolved subdomain') subdomain_data = '\n'.join(subdomain_list) if not utils.save_data(save_path, subdomain_data): logger.log('FATAL', 'Save resolved subdomain error') exit(1)
def save_brute_dict(dict_path, dict_set): dict_data = '\n'.join(dict_set) if not utils.save_data(dict_path, dict_data): logger.log('FATAL', '保存生成的字典出错') exit(1)
def save_brute_dict(dict_path, dict_set): dict_data = '\n'.join(dict_set) if not utils.save_data(dict_path, dict_data): logger.log('FATAL', 'Saving dictionary error') exit(1)
def save_subdomains(save_path, subdomain_list): logger.log('DEBUG', f'正在保存待解析的子域') subdomain_data = '\n'.join(subdomain_list) if not utils.save_data(save_path, subdomain_data): logger.log('FATAL', '保存待解析的子域出错') exit(1)
def export(target, type='target', db=None, alive=False, limit=None, path=None, format='csv', show=False): """ OneForAll export from database module Example: python3 dbexport.py --target name --format csv --dir= ./result.csv python3 dbexport.py --db result.db --target name --show False python3 dbexport.py --target table_name --tb True --show False Note: --format rst/csv/tsv/json/yaml/html/jira/xls/xlsx/dbf/latex/ods (result format) --path Result directory (default directory is ./results) :param str target: Table to be exported :param str type: Type of target :param str db: Database path to be exported (default ./results/result.sqlite3) :param bool alive: Only export the results of alive subdomains (default False) :param str limit: Export limit (default None) :param str format: Result format (default csv) :param str path: Result directory (default None) :param bool show: Displays the exported data in terminal (default False) """ if type == 'target': database = Database(db) domains = utils.get_domains(target) datas = [] if domains: for domain in domains: table_name = domain_to_table(domain) rows = database.export_data(table_name, alive, limit) if rows is None: continue format = utils.check_format(format, len(rows)) path = utils.check_path(path, target, format) if show: print(rows.dataset) data = rows.export(format) utils.save_data(path, data) logger.log('ALERT', f'The subdomain result for {table_name}: {path}') data = rows.as_dict() datas.extend(data) database.close() if len(domains) > 1: utils.export_all(alive, format, path, datas) elif type == 'table': database = Database(db) rows = database.export_data(target, alive, limit) format = utils.check_format(format, len(rows)) path = utils.check_path(path, target, format) if show: print(rows.dataset) data = rows.export(format) database.close() utils.save_data(path, data) logger.log('ALERT', f'The subdomain result for {target}: {path}') data_dict = rows.as_dict() return data_dict