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

Réseau/Web Python Discussion :

uploader sur un serveur ftp une série de dossier et sous dossier présent sur mon ordinateur


Sujet :

Réseau/Web Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    auteur
    Inscrit en
    Juillet 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : auteur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2018
    Messages : 8
    Par défaut uploader sur un serveur ftp une série de dossier et sous dossier présent sur mon ordinateur
    Bonjour à tous
    Je voudrais uploader sur un serveur ftp des dossiers et leur sous dossier présents sur mon ordinateur.
    J'ai cherché, cherché, mais je n'arrive à rien. Merci d'avance
    j'ai bien tenté ce code, mais cela ne marche pas:
    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
    import os.path, os
    from ftplib import FTP, error_perm
     
    ftp = FTP('server')
    ftp.login('utilisateur','password')
    #avec "subdirs" je fais la liste de tous les chemins des  dossiers et sous dossiers contenu dans le dossier "Documents" 
    subdirs = [x[0] for x in os.walk("/Users/olivier/Documents")]
    #avec localspace je ne garde que le nom des dossiers contenu dans le dossier "Documents"    
    for name in subdirs:
        localpath = os.path.basename(name)
    #je choisi le répertoire de destination de mes dossiers sur mon serveur ftp 
        ftp.cwd('/www/webvr/vr1/viewing/..') 
    #je place mes dossiers et sous dossiers sur le serveur   
        print("STOR", localpath, name)
        ftp.storbinary('STOR ' + localpath, open(name,'rb'))
     
    ftp.quit()

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 752
    Par défaut
    Salut,
    Citation Envoyé par falloff Voir le message
    Je voudrais uploader sur un serveur ftp des dossiers et leur sous dossier présents sur mon ordinateur.
    Vous devez le faire fichier par fichier en créant les répertoires intermédiaires sur la destination avant de pouvoir y poser le premier fichier.

    Citation Envoyé par falloff Voir le message
    J'ai cherché, cherché, mais je n'arrive à rien.
    C'est bien plus compliqué que le code que vous avez posté et un peu de recherche sur Internet vous aurait permis de voir des codes prêts à l'emploi.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre habitué
    Homme Profil pro
    auteur
    Inscrit en
    Juillet 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : auteur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2018
    Messages : 8
    Par défaut
    Oui, vous avez raison c'est plus compliqué. Je dois peut être expliquer précisément ce que je veux et sur internet, ça ne répond que partiellement à ma question.

    Toujours est t-il que je travail sur un plug in pour mettre en réalité virtuelle sur le webvr des objets 3D en quelques clic.
    J'ai donc sur mon disque dur une architecture de dossier organisé en fonction des types de casques VR. Mon script marche très bien en local en créant un type de fichier sur chaque dossier et sous dossier en fonction des types de casque de VR. Je bute sur l'envoie de cette architecture sur un serveur FTP.
    Voici mon achitecture de dossier en local le nom "essai" des fichiers html et le nom du dossier "essai" sont généré par une variable
    Nom : architectureDossier.png
Affichages : 1382
Taille : 21,6 Ko
    Je voudrais donc envoyer d'un bloc cette architecture sur un serveur ftp.
    J'ai bien un bout de code (plus compliqué) mais quand je l'execute ça me met tout en vrac sur mon serveur comme on peut voir sur l'image ci-dessous:
    Nom : dossierSurFtp.png
Affichages : 1357
Taille : 17,0 Ko
    Voici ce 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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    class envoiServeurFolder(bpy.types.Operator):
        bl_idname = "object.serveurfolder"
        bl_label = "Send Folder"
        bl_description = "send project's folder to serveur"
     
     
     
        def execute(self, context):
            dossier = bpy.context.scene.directory
            serveur = bpy.context.scene.my_tool.my_string3
            utilisateur = bpy.context.scene.my_tool.my_string2
            mdp = bpy.context.scene.my_tool.my_string1
            projet = bpy.context.scene.my_tool.my_string
            dossier = bpy.context.scene.directory
            myFTP = ftplib.FTP(serveur, utilisateur, mdp)
            myPath = r'/Users/olivier/Documents/essai/'
     
            def uploadThis(path):
                files = os.listdir(path)
                os.chdir(path)
                for f in files:
                    if os.path.isfile(f):
                        fh = open(f, 'rb')
                        myFTP.storbinary('STOR %s' % f, fh)
                        myFTP.cwd('/www/webvr/vr1/viewing/' + projet + '/')
                        fh.close()
                    elif os.path.isdir(f):
                        myFTP.mkd(f)
                        myFTP.cwd(f)
                        uploadThis(f)
                myFTP.cwd('/www/webvr/vr1/viewing/' + (projet) + '/')
                os.chdir('..')
            uploadThis(myPath) 
     
     
     
    bpy.utils.register_class(envoiServeurFolder)

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 752
    Par défaut
    Salut,

    Citation Envoyé par falloff Voir le message
    J'ai bien un bout de code (plus compliqué) mais quand je l'execute ça me met tout en vrac sur mon serveur comme on peut voir sur l'image ci-dessous
    Puisque vous avez choisi de vous déplacer dans les arborescences via des CWD, il faut vérifier que vous êtes bien à l'endroit attendu (l'instruction "print" vous permettrait de le visualiser).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre habitué
    Homme Profil pro
    auteur
    Inscrit en
    Juillet 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : auteur
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2018
    Messages : 8
    Par défaut upload folder in server ftp
    Bonjour
    J'ai bien fait des "print" je vois bien ce qu'il me fait, mais je n'arrive pas a changer mon code pour que les dossiers se charge sur le serveur exactement comme ceux présents sur mon disque dur avec les fichiers qu'ils contiennent.
    D'avance merci

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 752
    Par défaut
    Salut,

    Si vous n'arrivez pas à écrire ce genre de code peut être que vous pourriez en récupérer un qui fonctionne.
    note: tel que vous partez dans votre code sans récursivité, çà ne fonctionnera pas.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 17/03/2008, 15h48
  2. requête d'une image sur un serveur ftp
    Par mimi51340 dans le forum Entrée/Sortie
    Réponses: 16
    Dernier message: 03/03/2008, 21h12
  3. Ecraser un fichier déjà présent sur un serveur FTP
    Par agronomia dans le forum VB.NET
    Réponses: 1
    Dernier message: 27/02/2008, 14h03
  4. Ouvrir un document Word présent sur le serveur dans une nouvelle page+enregistrement
    Par kenny49 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 16/04/2007, 15h50

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