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

Web Perl Discussion :

téléchargement de fichier


Sujet :

Web Perl

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut téléchargement de fichier
    Bonjour,

    Je butte sur un petit problème, et j'espère que vous pourriez me donner un petit coup de main.

    Je dois automatiser en perl le téléchargement d'un fichier : "Table_1_full_2008-12-16.xls" (par exemple) sur la page http://www.sanger.ac.uk/genetics/CGP/Census/, le fichier est téléchargeable en cliquant sur un lien dont le nom est "Complete working list.xls".

    Je pense qu'il faut utiliser les modules WWW::Mechanize et/ou LWP::Simple, mais je tourne un peu en rond, quelqu'un aurait une solution pour m'aider ?

    Merci d'avance

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Pour extraire les liens da la page HTML, tu peux utiliser le module HTML::SimpleLinkExtor, et pour uploader le fichier xls, la méthode getstore de LWP::Simple.

    Une manière de faire :
    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
     
    #!/usr/bin/perl
     
    use strict;
    use warnings;
     
    use HTML::SimpleLinkExtor;
    use LWP::Simple qw($ua get getstore);
     
    my $root = "http://www.sanger.ac.uk/genetics/CGP/Census/";
     
    # création d'un analyseur de lien HTML et analyse de l'URL
    my $link_html = HTML::SimpleLinkExtor->new();
    $link_html->parse_url($root);
     
    # récupération du lien désiré
    my ($excel_link) = grep /\.xls$/ , $link_html->links();
     
    # enregistrement du fichier excel
    print "Uploading $root/$excel_link\n";
    getstore("$root/$excel_link", "full.xls");
    Ceci ne correspond pas exactement à la recherche d'un lien caché derrière un texte donné (mais plutôt à la recherche d'un lien vers un fichier avec une extension .xls). Ceci fonctionnera donc seulement si le fichier Excel recherché est le seul de la page. Les modules LinkExtor ne retournent pas le contenu texte de la balise contenant le lien, ce qui ne permet pas de faire l'analyse de ce texte pour répondre exactement à la question posée. Pour se faire, il faudrait utilise un parser plus générique.
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    Merci beaucoup Philou67430

    J'ai une autre question alors pour récupérer plusieurs fichiers .tsv sur un serveur FTP, je suppose que ce ne sera pas le module HTML::SimpleLinkExtor; qu'il faudra utiliser... un coup de pouce ?

    Encore une autre chose:
    D'après le code que tu m'as donné, j'essaye de l'adapter pour extraire plusieurs fichiers .txt d'un site en javascript (je pense que c'est du javascript) : http://methycancer.psych.ac.cn/Download.do, de plus la page annonce un serveur FTP mais est-ce que c'est vraiment un serveur FTP ? c'est peut-être pourquoi pour le moment mon script ne donne pas grand chose

    Encore merci d'avance à ceux ou celles qui pourront m'aider

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Citation Envoyé par Saoua83 Voir le message
    J'ai une autre question alors pour récupérer plusieurs fichiers .tsv sur un serveur FTP, je suppose que ce ne sera pas le module HTML::SimpleLinkExtor; qu'il faudra utiliser... un coup de pouce ?
    Tout dépend si les fichiers .tsv sont références en tant que lien dans une page HTML. Si ce n'est pas le cas, tu peux utiliser un aspirateur tel que wget, qui, en utilisant les options de filtre des extensions, devrait faire l'affaire.
    D'après le code que tu m'as donné, j'essaye de l'adapter pour extraire plusieurs fichiers .txt d'un site en javascript (je pense que c'est du javascript) : http://methycancer.psych.ac.cn/Download.do, de plus la page annonce un serveur FTP mais est-ce que c'est vraiment un serveur FTP ? c'est peut-être pourquoi pour le moment mon script ne donne pas grand chose

    Encore merci d'avance à ceux ou celles qui pourront m'aider
    Le site offre semble-t-il une interface http pour accéder à son serveur FTP (qui lui, semble bloqué en accès direct).
    Cela dit, les URL des fichiers du site ne présentent un motif différent du fichier Excel à chercher de tout à l'heure. Une recherche de ce type devrait fonctionner :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    my $root = "http://methycancer.psych.ac.cn/";
    my $root_re = quotemeta $root;
    my @fasta_links = grep /${root_re}Getdata.do\?filename=/ , $link_html->links();
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    Encore une fois merci, le wget fonctionne nikel, je connaissais en plus mais je n'y avais pas pensé...

    Quand au deuxième problème sur le site de MethyCancer c'est une autre histoire...

    Voici mon code :
    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
     
    #!/usr/bin/perl
     
    use strict;
    use warnings;
    use HTML::SimpleLinkExtor;
    use LWP::Simple qw($ua get getstore);
     
    sub MC_Extractor{
    	my $root = "http://methycancer.psych.ac.cn/";
    	my $root_re = quotemeta $root;
    	my $link_html = HTML::SimpleLinkExtor->new();
    	$link_html->parse_url($root);
     
    	#my @a_hrefs = $link_html->a;
    	#for my $element (@a_hrefs) {
    		#print $element;
    		#print "\n";
    		#getstore("$element", "MC_.$element.txt");
    	#}
     
    	my @fasta_links = grep /${root_re}Getdata.do\?filename=/ , $link_html->links();
    	for my $element (@fasta_links) {
    		print "Uploading $root/$element\n";
    		getstore("$root/$element", "MC_.$element.txt");
    	}
    }
    &MC_Extractor()
    Je penses qu'il y a un problème au niveau de la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my @fasta_links = grep /${root_re}Getdata.do\?filename=/ , $link_html->links();
    Il faudrait une déspécialisation du symbole = ou quelquechose comme ça peut-être...

  6. #6
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Que donne la sortie standard du script ?
    J'aurais tendance à dire qu'il essaye de créer localement des fichiers MC_Getdata.do?filename=...

    Ce qui n'est pas forcément élégant.
    Avec d'écrire le fichier, tu peux peut-être extraire le nom du fichier dernière filename=

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my ($local_name) = $element =~ /filename=([^&]+)/;
    Sinon, je ne comprends pas ta question de déspécialisation de =
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  7. #7
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Erreur N°1 : l'url de la page est $root/Download.do, à mettre lors du parsing :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	$link_html->parse_url("$root/Download.do");
    Erreur N°2 : les URL dans la page sont relative, le grep ne doit donc pas intégrer la racine $root_re (qui devient alors inutile et est à supprimer) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	my @fasta_links = grep /Getdata.do\?filename=/ , $link_html->links();
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  8. #8
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Cela dit, je ne comprends pas pourquoi le serveur retourne une erreur 500 à la requête formulée par getstore... alors que wget download l'url sans problème, et forcer le nom de l'agent avec $ua->agent() n'y change rien
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    Quand je parlais de "déspécialisation du symbole", c'est parce que la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my @fasta_links = grep /Getdata.do\?filename=/ , $link_html->links();
    et plus spécialement la partie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     grep /Getdata.do\?filename=/
    pose un problème, en effet après cette expression mon code est coloré en rose, comme si il était entre guillemets ou quelque chose comme ça


    Merci de ton aide

  10. #10
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    hormis Getdata.do qui devrait s'écrire Getdata\.do
    je ne vois pas le problème. Quel éditeur utilises-tu ?
    As-tu essayé mes différentes corrections ?
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  11. #11
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    J'utilises tout bêtement gedit...

    et il semble que ce soit le symbole / à la fin de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my @fasta_links = grep /Getdata.do\?filename=/
    qui pose problème.

    Et vu que j'ai un problème avec cette ligne, ça ne compile pas, si je la modifie, ça ne trouve rien, donc ça ne fait rien.

  12. #12
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Etrange, en perl 5.10, sous cygwin, je n'ai pas de pb avec cette version du script :
    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
    #!/usr/bin/perl
     
    use strict;
    use warnings;
    use HTML::SimpleLinkExtor;
    use LWP::Simple qw($ua get getstore);
     
    sub MC_Extractor{
            $ua->agent("Wget/1.11.4");
            my $root = "http://methycancer.psych.ac.cn/";
            my $root_re = quotemeta $root;
            my $link_html = HTML::SimpleLinkExtor->new();
            $link_html->parse_url("$root/Download.do");
     
            #my @a_hrefs = $link_html->a;
            #for my $element (@a_hrefs) {
                    #print $element;
                    #print "\n";
                    #getstore("$element", "MC_.$element.txt");
            #}
     
            my @fasta_links = grep /Getdata\.do\?filename=/ , $link_html->links();
            for my $element (@fasta_links) {
            my ($local_name) = $element =~ /filename=([^&]+)/;
            $local_name = "MC_$local_name";
            $local_name =~ s/(\.txt)?$/.txt/;
                    print "Uploading $root/$element in $local_name\n";
                    print getstore("$root$element", "MC_.$element.txt") . "\n";
            }
    }
    &MC_Extractor()
    (hormis le fait que le serveur me réponds ERREUR 500... je suppose qu'il faut essayer d'utiliser LWP::UserAgent, ...)

    Sinon, essaye d'antislasher le =, mais je ne vois pas pour quelle raison.
    Quelle est l'erreur que perl te donne pour cette ligne ?
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  13. #13
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    C'est bon j'ai modifié la ligne qui ne convenait pas à mon ordi en transformant le = par un \W. J'ai fait quelques très légères modifications et ton script fonctionne, alors merci beaucoup pour ton aide !

    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
    #!/usr/bin/perl -w
     
    use strict;
    use warnings;
    use HTML::SimpleLinkExtor;
    use LWP::Simple qw($ua get getstore);
     
    sub MC_Extractor{
            $ua->agent("Wget/1.11.4");
            my $root = "http://methycancer.psych.ac.cn/";
            my $root_re = quotemeta $root;
            my $link_html = HTML::SimpleLinkExtor->new();
            $link_html->parse_url("$root/Download.do");
     
    	my $path =  "/home/.../perl/";
    	chdir $path;
    	my $date = &date_format;
    	my $dir = "MC_retrieve_".$date;
    	mkdir $dir;
    	chdir $path.$dir;
     
            my @fasta_links = grep /Getdata\.do\?filename\W/ , $link_html->links();
            for my $element (@fasta_links) {
    	    my ($local_name) = $element =~ /filename=([^&]+)/;
    	    $local_name = "MC_$local_name";
                print "Uploading $root/$element in $local_name\n";
                print getstore("$root$element", $local_name) . "\n";
            }
    }
    &MC_Extractor();
    (bon ça me renvoie un "200" entre chaque download, mais je ne sais pas ce que ça signifie )

  14. #14
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Le 200 est le retour du http request (200 = OK).
    Dans mon cas, derrière le proxy de mon bureau, j'obtiens 500 (internal server error). En revanche, wget peut télécharger le fichier, donc je ne sais pour quelle raison cela ne fonctionne pas chez moi. Si quelqu'un a une idée, je suis intéressé.

    En revanche, pour tenter de corriger ce problème de mon coté, j'ai modifié le nom par défaut du user agent web qui fait la requête http (en utilisant d'abord le nom "my agent/1.0", puis "Wget/1.11.4").
    Dans ton cas, je te conseillerais de modifier ce user agent pour un nom, soit par défaut (donc en supprimant la ligne $ua->agent(...)), soit propre à ton application (par exemple "MC bot/0.1").

    Concernant le \W à la place du =, je ne comprends pas pourquoi cela ne fonctionne pas chez toi. Quelle version de perl utilises-tu ?
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  15. #15
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par Philou67430 Voir le message
    Le 200 est le retour du http request (200 = OK).
    Ah ok merci pour cette information.

    Citation Envoyé par Philou67430 Voir le message
    Concernant le \W à la place du =, je ne comprends pas pourquoi cela ne fonctionne pas chez toi. Quelle version de perl utilises-tu ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...@ubuntu:$  perl --version
    This is perl, v5.10.0 built for i486-linux-gnu-thread-multi 
    ...
    ps: Veux-tu que je retires le [résolu] en attendant ?

  16. #16
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Citation Envoyé par Saoua83 Voir le message
    ps: Veux-tu que je retires le [résolu] en attendant ?
    Ce n'est pas nécessaire...

    Mais tu n'a pas répondu à ma question concernant le = :
    Sinon, essaye d'antislasher le =, mais je ne vois pas pour quelle raison.
    Quelle est l'erreur que perl te donne pour cette ligne ?
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  17. #17
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par Philou67430 Voir le message
    Mais tu n'a pas répondu à ma question concernant le = :
    Il ne me renvoyer pas vraiment d'erreur, enfin si mais sur la fin du script, puisque comme je te le disais, dès que je mettais / c'est un peu comme ci j'avais ouvert des guillemets et que le reste du code était coloré comme si j'avais écrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     my @fasta_links = grep /Getdata\.do\?filename= " , $link_html->links();
            for my $element (@fasta_links) {
    	    my ($local_name) = $element =~ /filename=([^&]+)/;
    	    $local_name = "MC_$local_name";
                print "Uploading $root/$element in $local_name\n";
                print getstore("$root$element", $local_name) . "\n";
            }
    }
    &MC_Extractor();
    je ne comprends pas non plus pourquoi ...

  18. #18
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    C'est donc gedit qui ne collorise pas bien... l'exécution du script était correcte ?
    [troll]Si c'est bien cela, passe à Emacs et Cperl-mode [/troll]
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  19. #19
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 44
    Points : 32
    Points
    32
    Par défaut
    non ça ne vient pas de gedit puisque je suis passée sous Emacs exprès pour vérifier. Mais la "coloration" était la même. Et oui le script s'exécutait comme il faut.

  20. #20
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Attention, j'ai bien dit Emacs et le mode CPerl...
    Car le mode perl installé par défaut échoue souvent dès que des expressions régulières apparaissent (comme avec le symptôme que tu indiques).

    De plus, j'ajouterais : ce n'est pas la colorisation qui fait la "justesse" d'une expression régulière. Par là, je veux dire que même si dans un cas précis \W peut remplacer =, cela ne représente pas la même chose (et ne matche donc pas les mêmes chaines). Il ne faut donc pas être aveuglé par la colorisation.
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Téléchargement de fichier
    Par casafa dans le forum Web & réseau
    Réponses: 21
    Dernier message: 18/06/2009, 23h34
  2. Réponses: 5
    Dernier message: 08/12/2005, 20h13
  3. Téléchargement de fichiers par HTTP / FTP
    Par Gladiator dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 07/12/2005, 11h28
  4. Réponses: 5
    Dernier message: 05/11/2005, 17h53
  5. [SOAP][XML][C#.NET] Téléchargement de fichiers XML
    Par juniorAl dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 27/06/2005, 09h35

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