Bonjour;

Je dois parser un grand nombre de fichiers.
ils sont de la forme
host:$host service:$service_1,$service_2,...,$service_n

Pour les host facile: le type est toujours le même (ce sont des hostnames) donc je peux faire un traitement dessus.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
if "host:" in line:
	hostname = line.split('host:')[1].split(' ')[0].rstrip()
	hosts_list.append(hostname)
Pour les services, plus dur;
Ils varient tout le temps. Ça peut être 'http,https' ou 'telnet' ou n'importe quel service.

J'aimerais que le nom de la variable que je créé puisse varier en fonction du nom du service lui-même. Faire un truc du genre:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
if "services:" in line:
	services_list = line.split('services:')[1].split(' ')[0].rstrip().split(',')
	for service in services_list:
		print hostname,service # Jusque là c'est bon
		"service"-group.append(hostname)
Je voudrais avoir http-group.append(hostname) par exemple si service_i == "http"

Je pense qu'il y a une solution plus simple que de recopier la ligne pour autant de services que j'ai à prendre en compte, mais vraiment je vois pas.

Je vous remercie pour toute idée ou suggestion que vous pourriez me donner