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

Python Discussion :

listdir en reseau ne marche pas


Sujet :

Python

  1. #1
    Membre habitué

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    421
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 421
    Points : 189
    Points
    189
    Par défaut listdir en reseau ne marche pas
    bonjour,

    j'essaie d'atteindre un repertoire en reseau mais python ne me le trouve pas.
    pourtrant, j'y ai bien acces via ls, dir , explorer ,etc...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     D:\appl\Microsoft Visual Studio 9.0\VC>python
    Python 2.6.5 (r265:79096, Mar 19 2010, 21:48:26) [MSC v.1500 32 bit (Intel)] on
    win32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import os
    >>> os.listdir("\\patrns94\rep")
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    WindowsError: [Error 3] The system cannot find the path specified: '\\patrns94\\
    COVO/*.*'
    >>>
    y a t il une autre méthode a utiliser .

    merci

    salutation

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 758
    Points : 970
    Points
    970
    Par défaut
    bonsoir,

    comme tu le dis, le répertoire est sur le réseau. mais on peut facilement faire croire à Python qu'il est en local: il suffit que tu fasses le montage de disque et que tu lui attribues une lettre (avec "connecter un lecteur réseau")

    avec ça, cela devrait marcher.

  3. #3
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Bonsoir,

    Jamais utiliser os.lisdir en réseau mais ce n'est pas plutôt os.listdir("\\\\patrns94\\rep") ou os.listdir(r'\\patrns94\rep') ?
    Ou plutôt ("\\\\patrns94\\rep\") et (r'\\patrns94\rep\') ?

    Je ne suis pas sous Windows mais il me semble qu'il y a une histoire de ce style.

    @+

    Edit : A noter os.listdir("\\patrns94\rep") > The system cannot find the path specified: '\\patrns94\\
    COVO/*.*'
    Merci d'utiliser le forum pour les questions techniques.

  4. #4
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2010
    Messages : 99
    Points : 143
    Points
    143
    Par défaut
    Je n'y connais rien au niveau des réseaux Windows mais je sais qu'il faut se méfier des caractères \
    Ce caractère est un symbole spécial pour les chaines python (comme pour le C et d'autres langages d'ailleurs).
    On se sert de \ suivi d'autres choses pour pouvoir écrire des symboles spéciaux.
    Donc si tu veux mettre un caractère \, il faut en écrire de deux suites.
    Par exemple "biri\\bibi" donnera la chaîne de caractères biri\bibi

  5. #5
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Bonjour,

    Il semble bien que cela vienne de la. Dans ce code tu remarqueras
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    def covert_unc(host, path):
        """ Convert a file path on a host to a UNC path."""
        return ''.join(['\\\\', host, '\\', path.replace(':', '$')])
    Ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        # Pad a backslash to the destination directory if not provided.
        if not dest_dir[len(dest_dir) - 1] == '\\':
            dest_dir = ''.join([dest_dir, '\\'])
    @+

    Ps : Regarde au passage def wnet_connect(host, username, password)
    Merci d'utiliser le forum pour les questions techniques.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 758
    Points : 970
    Points
    970
    Par défaut
    bonjour

    juste pour info relativement au dernier post:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dest_dir[len(dest_dir) - 1]
    est équivalent à:

    qui est un peu plus élégant

Discussions similaires

  1. Outlook ne marche pas dans mon réseau sous linux
    Par Germain123 dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 25/03/2006, 22h15
  2. Ifconfig eth1 -up marche pas(carte reseau)
    Par kacedda dans le forum Réseau
    Réponses: 11
    Dernier message: 26/02/2005, 22h37
  3. 'SHOW TABLES' marche pas sous postgresql !?
    Par fet dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 13/05/2004, 09h28
  4. Réponses: 9
    Dernier message: 07/05/2003, 12h57
  5. Sysdate qui marche pas ??
    Par StouffR dans le forum Langage SQL
    Réponses: 4
    Dernier message: 28/08/2002, 13h23

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