IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modules Perl Discussion :

Utilisation de template pour récupérer les infos d'un fichier


Sujet :

Modules Perl

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Utilisation de template pour récupérer les infos d'un fichier
    Bonjour à tous,

    J'aimerai pouvoir récupérer simplement les informations contenues dans un fichier (qui accessoirement est un whois).
    Les fichiers n'ont pas les memes formats (en fonction des extensions) et j'ai donc créé plusieur templates de la forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    whois: This information is subject to an Acceptable Use Policy.
    See http://www.switch.ch/id/terms/aup.html
     
     
    Domain name:
    #%{domain_name}%#
     
    Holder of domain name:
    #%{owner_name}%#
    #%{owner_org}%#
    #%{owner_addr1}%#
    #%{owner_cp}%# #%{owner_city}%#
    #%{owner_country}%#
    Contractual Language: #%{owner_lang}%#
     
    Technical contact:
    #%{tech_name}%#
    #%{tech_addr1}%#
    #%{tech_cp}%# #%{tech_city}%#
    #%{tech_country}%#
     
    Name servers:
    #%{dns_1}%#	[#%{dns_1_ip}%#]
    #%{dns_2}%#	[#%{dns_2_ip}%#]
    Il faudrait donc, à partir de ce template, pouvoir récupérer n'importe quelle information d'un whois .CH
    J'ai regardé un peu le Template Toolkit mais il permet seulement de créer un fichier a partir d'un template et d'informations mais pas l'inverse, je veux récupérer les informations a partir d'un fichier et d'un template.

    Est ce que quelqu'un sait si un module quelconque sait faire ca?
    Sinon je suis partit pour coder ca pendant un petit moment

    Merci d'avance de votre aide.

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Pas besoin de chercher, j'ai utilisé les reg_exp pour pouvoir récupérer ce que je veux dans mes fichiers

    j'ai un hash contenant les reg_exp que les différentes variables peuvent prendre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    my %content_values = (	'domain_name' => '[0-9a-z_-]+\.+[a-z\.]+',
    						'domain_name_no_ext' => '[0-9a-z_-]+',
    						'domain_status' => '[a-zA-Z0-9_ -]+');
    puis grâce au code suivant je peux récupérer ce que je veux dans mon fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    while ($whois_line = <WHOIS_FILE>) {
    	$tpl_line = <TEMPLATE_FILE>;
     
    	if ($tpl_line =~ /[#%{]([a-z0-1_]+)[}%#]/) {
    		$pattern = $tpl_line;
    		$pattern =~ s/#%{([a-z0-1_]+)}%#/($content_values{$1})/;
    		$whois_line =~ /$pattern/;
    		print $1."\n\n";
    	}
    }
    Apres ce n'est qu'un début, je ne récupère qu'une variable par ligne pour le moment mais en améliorant tout ca, ca passera surement

    Merci quand meme de votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 13/04/2010, 10h14
  2. Réponses: 5
    Dernier message: 02/05/2008, 16h28
  3. Réponses: 21
    Dernier message: 16/04/2008, 11h06
  4. Réponses: 3
    Dernier message: 24/05/2007, 00h52
  5. Réponses: 7
    Dernier message: 06/04/2007, 18h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo