CoolFace
Modelpublic

lilbool/vuln-code-analysis

sourceHugging Facemitupdated 2y agoView on Hugging Face
0likes
compile_safe_codes_to_json.py43 linesDownload Raw Back to scripts
1import os
2import json
3import re
4
5def sanitize_filename(filename):
6    """Remove ou substitui caracteres inválidos em nomes de arquivos."""
7    return re.sub(r'[<>:"/\\|?*]', '_', filename)
8
9def compile_safe_codes_to_json(input_dir, output_file):
10    """Compila todos os arquivos de códigos seguros em um único JSON."""
11    compiled_data = []
12
13    # Iterar por todos os arquivos na pasta de códigos seguros
14    for filename in os.listdir(input_dir):
15        if filename.endswith(".txt"):  # Filtrar apenas arquivos de texto
16            file_path = os.path.join(input_dir, filename)
17            try:
18                with open(file_path, 'r', encoding='utf-8') as f:
19                    content = f.read()
20                # Adicionar os dados ao JSON
21                compiled_data.append({
22                    "filename": sanitize_filename(filename),
23                    "content": content,
24                    "safe": True  # Marcar como código seguro
25                })
26            except Exception as e:
27                print(f"[ERROR] Could not process file {filename}: {e}")
28
29    # Salvar os dados compilados no arquivo JSON
30    try:
31        with open(output_file, 'w', encoding='utf-8') as json_file:
32            json.dump(compiled_data, json_file, indent=4)
33        print(f"[SUCCESS] Compiled {len(compiled_data)} safe codes into {output_file}")
34    except Exception as e:
35        print(f"[ERROR] Could not write JSON file: {e}")
36
37if __name__ == "__main__":
38    input_directory = "safe-code-analyzer/safe_codes"  # Diretório dos códigos seguros
39    output_json_file = "safe-code-analyzer/compiled_safe_codes.json"  # Arquivo JSON de saída
40
41    os.makedirs(os.path.dirname(output_json_file), exist_ok=True)
42    compile_safe_codes_to_json(input_directory, output_json_file)
43