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

Langage Perl Discussion :

Besoin d'aide pour faire un script


Sujet :

Langage Perl

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 43
    Points : 24
    Points
    24
    Par défaut Besoin d'aide pour faire un script
    Salut j'ai besoin d'utiliser WWW::RobotRules dans un script mais je comprend pas comment il marche exactement j'ai testé plein de soluce et je n'arrive a rien , le mieux que je suis arrivé a faire c'est




    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
    #!/usr/bin/perl -w
    use strict;
     
     
       my @site = ("http://clubic.com/robots.txt"); 
     
          @site = robots(@site)
     
     
       sub robots 
       { 
       use WWW::RobotRules; 
       my $rules = WWW::RobotRules->new('Mozilla/5.0 (compatible)'); 
       use LWP::Simple qw(get); 
     
       {
       foreach $resultat( @_ ) {
       my $robots_txt = get $resultat; 
        $rules->parse($resultat, $robots_txt) if defined $robots_txt; 
      }
     
     
    }
    Et la catastrophe je sais pas comment récupérer la sortie du programme tout ce que j'ai tenté me sort Hash:?????????

    De plus j'ai encore un prb avec ce module il ne sort que les lien Allow hors certain fichiers robots.txt ne comporte que des Disallow

    User-agent: *
    Disallow: /s/infoprix.php
    Disallow: /s/infoprix_2.php
    Disallow: /shopper/infoprix_2.php
    De même auriez vous une solution pour retaper les url parce que

    /s/infoprix.php c'est moins exploitable que htp://clubic.com/s/infoprix.php ou un exemple de sctipt complet avec robotrules parce que je sèche lamentablement.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 210
    Points : 99
    Points
    99
    Par défaut
    Si tu savais sa fait bien 1 mois que j'essaie sans succès le mieux c'est d'utiliser lwp pour pomper les robots.txt ensuite ben c'est la qu'est la problème le recontruction des url, j'y suis arrivers mais les regXp ne me renvoyais que le premier Item du tableau

    Voila pour pomper les robots.txt

    sub find
    {
    use LWP::Simple;
    my @resultat;
    for my $url( @_ ) {
    push @resultat, get($url);
    }
    return @resultat;
    }

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 43
    Points : 24
    Points
    24
    Par défaut
    Bon, donc voila j'ai un peu cherche sur le forum et j'ai truover un script je l'es un peu modifié mais il a un problème de while


    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    #!C:\Perl\bin\perl.exe 
     
    $| = 1;
    ################################## 
    # Tableau d'adresse(s) 
    ################################## 
     
    @site = ("http://www.google.com/robots.txt","http://search.msn.fr/robots.txt"); 
     
     
     
     
    for $rebuild( @site ) {
    ################################## 
    # Appelle des fonctions 
    ################################## 
     
    @site = find(@site); 
    @site = replace(@site); 
    print "@site"; # Récupération de robotx.txt 
     
    ################################## 
    # Recherche des robots.txt 
    ################################## 
     
    sub find { 
      use LWP::Simple; 
        my @resultat; 
        for my $url( @_ ) { 
            push @resultat, get($url); 
        } 
        return @resultat; 
     } 
     
    ################################## 
    # Parser robots.txt 
    ################################## 
     
     
    sub replace 
    {
     
    while (my $site_return = shift @_) { 
    $site_return =~ s/User-agent: \*//ig; 
    $site_return =~ s/Allow.*//g;
    $site_return =~ s/#.*//g;
    $rebuild =~ s/\/robots\.txt//ig;
    $site_return =~ s/Disallow: /$rebuild\/$1/ig; 
    $site_return =~ s/\/\//\//ig; 
    $site_return =~ s/http:\//http:\/\//ig; 
    $site_return =~ s/^\n*//ig; 
    $site_return =~ s/\n$//ig;
     print "$site_return\n"; 
      } 
     }
    }

    Voici ce que me renvoie le prog


    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    http://www.google.com/search
    http://www.google.com/groups
    http://www.google.com/images
    http://www.google.com/catalogs
    http://www.google.com/catalog_list
    http://www.google.com/news
    http://www.google.com/nwshp
    http://www.google.com/?
    http://www.google.com/addurl/image?
    http://www.google.com/pagead/
    http://www.google.com/relpage/
    http://www.google.com/sorry/
    http://www.google.com/imgres
    http://www.google.com/keyword/
    http://www.google.com/u/
    http://www.google.com/univ/
    http://www.google.com/cobrand
    http://www.google.com/custom
    http://www.google.com/advanced_group_search
    http://www.google.com/advanced_search
    http://www.google.com/googlesite
    http://www.google.com/preferences
    http://www.google.com/setprefs
    http://www.google.com/swr
    http://www.google.com/url
    http://www.google.com/wml?
    http://www.google.com/xhtml?
    http://www.google.com/imode?
    http://www.google.com/jsky?
    http://www.google.com/pda?
    http://www.google.com/sprint_xhtml
    http://www.google.com/sprint_wml
    http://www.google.com/pqa
    http://www.google.com/palm
    http://www.google.com/hws
    http://www.google.com/bsd?
    http://www.google.com/linux?
    http://www.google.com/mac?
    http://www.google.com/microsoft?
    http://www.google.com/unclesam?
    http://www.google.com/answers/search?q=
    http://www.google.com/local?
    http://www.google.com/local_url
    http://www.google.com/froogle?
    http://www.google.com/froogle_
    http://www.google.com/print?
    http://www.google.com/scholar?
    http://www.google.com/complete
    http://www.google.com/sponsoredlinks
    http://www.google.com/videosearch?
    http://www.google.com/videopreview?
    http://www.google.com/videoprograminfo?
    http://www.google.com/maps?
    http://www.google.com/translate?
    http://www.google.com/ie?
    http://www.google.com/sms/demo?
     
     
    # ICI NORMALEMENT c'est http://search msn.fr et pas google
     
    http://www.google.com/results
    http://www.google.com/keepalive/
    http://www.google.com/static/
    http://www.google.com/w3c/
    http://www.google.com/cfgs/
    http://www.google.com/schema/
    http://www.google.com/kids/
    http://www.google.com/Kidz/
    http://www.google.com/pass/
    http://www.google.com/news/
    http://www.google.com/images/
    Une piste please !!!!

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 43
    Points : 24
    Points
    24
    Par défaut
    Je sais c'est pas propre comme code pour ce qui est de $rebuild c'est en fait (normalement) les sites dans @site mais sans /robots.txt au bout voila

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 43
    Points : 24
    Points
    24
    Par défaut
    J'ai trouvé

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

Discussions similaires

  1. Besoin d'aide pour faire fonctionner un script Perl pour un photomaton sous Linux.
    Par loran42o dans le forum Programmation et administration système
    Réponses: 1
    Dernier message: 29/05/2013, 09h31
  2. Besoin d'aide pour installer un script PHP
    Par picasso1er dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 15
    Dernier message: 14/09/2007, 12h00
  3. Réponses: 42
    Dernier message: 11/03/2007, 14h09
  4. Besoin d'aide pour faire fonctionner un Script d'upload d'images
    Par PaoOo dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 15/06/2006, 21h24
  5. [VBA-E]besoin d'aide pour faire une boucle
    Par mikazounette dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/04/2006, 14h04

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