mirror of https://github.com/MISP/PyMISP
				
				
				
			
		
			
				
	
	
		
			45 lines
		
	
	
		
			1022 B
		
	
	
	
		
			Python
		
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1022 B
		
	
	
	
		
			Python
		
	
	
| #!/usr/bin/env python
 | |
| 
 | |
| from __future__ import annotations
 | |
| 
 | |
| try:
 | |
|     from pymispgalaxies import Clusters  # type: ignore
 | |
|     has_pymispgalaxies = True
 | |
| except ImportError:
 | |
|     has_pymispgalaxies = False
 | |
| 
 | |
| try:
 | |
|     from pytaxonomies import Taxonomies  # type: ignore
 | |
|     has_pymispgalaxies = True
 | |
| except ImportError:
 | |
|     has_pymispgalaxies = False
 | |
| 
 | |
| 
 | |
| def revert_tag_from_galaxies(tag: str) -> list[str]:
 | |
|     clusters = Clusters()
 | |
|     try:
 | |
|         return clusters.revert_machinetag(tag)
 | |
|     except Exception:
 | |
|         return []
 | |
| 
 | |
| 
 | |
| def revert_tag_from_taxonomies(tag: str) -> list[str]:
 | |
|     taxonomies = Taxonomies()
 | |
|     try:
 | |
|         return taxonomies.revert_machinetag(tag)
 | |
|     except Exception:
 | |
|         return []
 | |
| 
 | |
| 
 | |
| def search_taxonomies(query: str) -> list[str]:
 | |
|     taxonomies = Taxonomies()
 | |
|     found = taxonomies.search(query)
 | |
|     if not found:
 | |
|         found = taxonomies.search(query, expanded=True)
 | |
|     return found
 | |
| 
 | |
| 
 | |
| def search_galaxies(query: str) -> list[str]:
 | |
|     clusters = Clusters()
 | |
|     return clusters.search(query)
 |