import json import os from datetime import datetime def save_cve_analysis(cve_id, cve_data, summary=None): """Save CVE analysis results to JSON file""" if not os.path.exists('data'): os.makedirs('data') analysis = { 'cve_id': cve_id, 'analyzed_at': datetime.now().isoformat(), 'cve_data': cve_data, 'ai_summary': summary } filename = f"data/{cve_id}.json" with open(filename, 'w', encoding='utf-8') as f: json.dump(analysis, f, ensure_ascii=False, indent=2) print(f" Saved to {filename}") # Also store in vector database for similarity search try: from vector_storage import vector_storage vector_storage.add_cve(cve_id, cve_data, summary) except: pass # Graceful degradation if vector storage fails def load_cve_analysis(cve_id): """Load analyzed CVE data""" filename = f"data/{cve_id}.json" if os.path.exists(filename): with open(filename, 'r', encoding='utf-8') as f: return json.load(f) return None # Test if __name__ == "__main__": from api_client import fetch_cve_simple cve_data = fetch_cve_simple("CVE-2021-44228") if cve_data: save_cve_analysis("CVE-2021-44228", cve_data, "Test summary") loaded = load_cve_analysis("CVE-2021-44228") print(f"Load successful: {loaded['cve_id']}")