mirror of https://github.com/CIRCL/AIL-framework
				
				
				
			
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
| #!/usr/bin/env python3
 | |
| # -*-coding:UTF-8 -*
 | |
| """
 | |
| The JSON Receiver Module
 | |
| ================
 | |
| 
 | |
| Recieve Json Items (example: Twitter feeder)
 | |
| 
 | |
| """
 | |
| import os
 | |
| import json
 | |
| import redis
 | |
| import sys
 | |
| import time
 | |
| 
 | |
| sys.path.append(os.environ['AIL_BIN'])
 | |
| from Helper import Process
 | |
| from pubsublogger import publisher
 | |
| 
 | |
| sys.path.append(os.path.join(os.environ['AIL_BIN'], 'lib/'))
 | |
| import ConfigLoader
 | |
| 
 | |
| import importer
 | |
| 
 | |
| 
 | |
| if __name__ == '__main__':
 | |
|     publisher.port = 6380
 | |
|     publisher.channel = 'Script'
 | |
| 
 | |
|     config_section = 'Importer_Json'
 | |
| 
 | |
|     process = Process(config_section)
 | |
| 
 | |
|     config_loader = ConfigLoader.ConfigLoader()
 | |
| 
 | |
|     # REDIS #
 | |
|     server_cache = config_loader.get_redis_conn("Redis_Log_submit")
 | |
|     config_loader = None
 | |
| 
 | |
|     # LOGGING #
 | |
|     publisher.info("JSON Feed Script started to receive & publish.")
 | |
| 
 | |
|     # OTHER CONFIG #
 | |
|     DEFAULT_FEEDER_NAME = 'Unknow Feeder'
 | |
| 
 | |
|     while True:
 | |
| 
 | |
|         json_item = importer.get_json_item_to_import()
 | |
|         if json_item:
 | |
| 
 | |
|             json_item = json.loads(json_item)
 | |
|             feeder_name = importer.get_json_source(json_item)
 | |
|             print('importing: {} feeder'.format(feeder_name))
 | |
| 
 | |
|             json_import_class = importer.get_json_receiver_class(feeder_name)
 | |
|             importer_obj = json_import_class(feeder_name, json_item)
 | |
|             importer.process_json(importer_obj, process)
 | |
| 
 | |
|         else:
 | |
|             time.sleep(5)
 |