Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 14 sur 14
  1. #1
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2012
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : septembre 2012
    Messages : 52
    Points : 11
    Points
    11

    Par défaut XML::Twig et erreur

    Bonjour,

    J'ai fait un script en perl qui utilise le module XML::Twig.

    Lorsque je l'exécute, voilà l'erreur qu'il me retourne:
    not well-formed (invalid token) at line 1, column 1, byte 1 at /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/XML/Parser.pm line 187

    Quelqu'un connait?

    Merci

  2. #2
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    avril 2004
    Messages
    15 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 15 899
    Points : 483 788
    Points
    483 788

    Par défaut

    Cela veut dire que ton fichier XML est non valide.

    Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !

  3. #3
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2012
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : septembre 2012
    Messages : 52
    Points : 11
    Points
    11

    Par défaut

    J'ai eu du mal à trouver pourquoi mon fichier était non valide car ça marchait avant de faire un ftp.

    Donc, depuis que je télécharge mon fichier depuis un serveur ftp windows, le fichier est modifié.

    Je m'explique: quand je déplace le fichier de windows à linux avec WinSCP, il n'y a pas de problème. Mais quand je le récupère avec une connexion ftp via mon script perl et le module Net::FTP ça ne marche plus pour cette raison: le fichier a été modifié.

    Voici ma fonction ftp:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    sub ftp {
    	my $user = $OPTION{'user'};
    	my $password = $OPTION{'password'};
     
    	$ftp = Net::FTP->new("$OPTION{'address'}", Debug => 0)
    		or die "Cannot connect to $OPTION{'address'}: $@";
    	$ftp->login($user,$password)
    		or die "Cannot login ", $ftp->message;
    	$ftp->cwd("$OPTION{'directory'}")
    		or die "Cannot change working directory ", $ftp->message;
    	$ftp->get("$OPTION{'file'}")
    		or die "get failed ", $ftp->message;
    	$ftp->quit;
    }
    Savez vous d'où cela peut venir?

  4. #4
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    avril 2004
    Messages
    15 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 15 899
    Points : 483 788
    Points
    483 788

    Par défaut

    Après ton login, rajoute :

    Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !

  5. #5
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2012
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : septembre 2012
    Messages : 52
    Points : 11
    Points
    11

    Par défaut

    Ca ne change rien.

    J'ai aussi essayé avec $ftp->ascii;

  6. #6
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    avril 2004
    Messages
    15 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 15 899
    Points : 483 788
    Points
    483 788

    Par défaut

    Regarde si l'encodage du fichier est le même. Mais c'est étrange ton histoire quand même.

    Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !

  7. #7
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2012
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : septembre 2012
    Messages : 52
    Points : 11
    Points
    11

    Par défaut

    J'ai fait un hexdump des 2 fichiers (le scp et le ftp) et ils sont bien différents.

  8. #8
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    avril 2004
    Messages
    15 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 15 899
    Points : 483 788
    Points
    483 788

    Par défaut

    Qu'est-ce qui change ? Tu as bien laissé le binary ?

    Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !

  9. #9
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2012
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : septembre 2012
    Messages : 52
    Points : 11
    Points
    11

    Par défaut

    Oui je l'ai laissé et il y a quasi tout qui change (en comparant les deux hexdump)

  10. #10
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    avril 2004
    Messages
    15 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 15 899
    Points : 483 788
    Points
    483 788

    Par défaut

    Ce n'est absolument pas normal. Faut nous montrer un exemple de d'un fichier XML original et issu du FTP.

    Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !

  11. #11
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2012
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : septembre 2012
    Messages : 52
    Points : 11
    Points
    11

    Par défaut

    Erreur résolue, en fait je suis passé par un script bash "appelé en perl". ce script utilise la commande ncftp.

    Concernant l'erreur de base, elle était donc bien due à un mauvais fichier XML, ceci à cause du module Net::FTP qui modifiait le fichier en passant de Windows à Linux.

    Merci de ton aide.

  12. #12
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    avril 2004
    Messages
    15 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 15 899
    Points : 483 788
    Points
    483 788

    Par défaut

    Ta solution ne me convient absolument pas. Cela fait une dizaine d'années que j'utilise Net::FTP et il ne modifie pas les fichiers à ce point donc ton problème est ailleurs.

    Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !

  13. #13
    Candidat au titre de Membre du Club
    Inscrit en
    septembre 2012
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : septembre 2012
    Messages : 52
    Points : 11
    Points
    11

    Par défaut

    Ce qui est bizarre, c'est :
    - quand j'utilise le transfert avec WinSCP, le fichier est nickel;
    - quand j'utilise les commandes ncftp, le fichier est nickel;
    - quand j'utilise Net::FTP avec mon script, le fichier est modifié.

    Difficile de savoir d'où cela peut venir.

  14. #14
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    avril 2004
    Messages
    15 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 15 899
    Points : 483 788
    Points
    483 788

    Par défaut

    si tu peux, donnes nous deux fichiers XML un nickel et l'autre modifié par Net::FTP.

    Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •