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 :

Connection avec ftplib


Sujet :

Réseau/Web Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 306
    Par défaut Connection avec ftplib
    Bonjour,

    Encore moi, vu que je débute j'ai beaucoup de questions
    Pour mon projet, je dois faire un script qui tourne en tâche de fond qui tourne en boucle toutes les x secondes et va vérifier si le server est down

    Je voulais utiliser le scheduler pour boucler mais il ne passe qu'une seule fois

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    s = sched.scheduler(time.time, time.sleep)
    def boucle(): print "ici"
    s.enter(5, 1, boucle, ())
    Je pensais que ça devait boucler toutes les 5 secondes

    J'ai également le problème d'uploader sur le serveur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    s = ftp.FTP(pathServ,user,passwd)
    f = open(pathLoc+"test.txt",'rb')                # file to send
    s.storbinary('STOR test.txt', f)         # Send the file
     
    f.close()                                # Close file and FTP
    s.quit()
    Au moment de la connection il me met un message d'erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Traceback (most recent call last):
      File "ping.py", line 24, in <module>
        s = ftp.FTP(pathServ,user,passwd) # Connect
      File "/usr/lib/python2.7/ftplib.py", line 119, in __init__
        self.login(user, passwd, acct)
      File "/usr/lib/python2.7/ftplib.py", line 378, in login
        if resp[0] == '3': resp = self.sendcmd('PASS ' + passwd)
      File "/usr/lib/python2.7/ftplib.py", line 244, in sendcmd
        return self.getresp()
      File "/usr/lib/python2.7/ftplib.py", line 219, in getresp
        raise error_perm, resp
    ftplib.error_perm: 530 Login incorrect.
    Or les paramètres que je passe sont correctes vu que je les utilise en ssh

    Pour info je n'arrive pas à pinguer le serveur avec une simple commande : ping xxx.xxx.xx.xx

    rien ne se passe et quand je l'arrête avec CTRL+C il me met qu'aucun paquet n'a été transmis.

    Je sais que ça fait beaucoup mais là je cale

    Merci

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 063
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 063
    Par défaut
    tu as oublié la fonction run()

    Un exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    import sched, time
     
    def execute():
        print('coucou')
     
    def planifier():
        s.enter(5, 1, execute, ())
        s.run()
     
    s = sched.scheduler(time.time, time.sleep)
    planifier()

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 306
    Par défaut
    Je reviens avec plus d'infos
    Je voulais uploader sur le serveur avec ftpLib

    Pour exemple je voudrais uploader sur mon serveur 147.255.41.12 dans le répertoire /var/www/test (ce répertoire a bien les droits pour écrire)
    Je n'arrive pas à trouver la bonne combinaison pour uploader dans ce répertoire, que faut-il que je mette dans pathServ?

    Est ce qu'il faut configurer quelque chose sur le serveur pour qu'il accepte l'upload ou sur la machine client?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    s = ftp.FTP(pathServ,user,passwd) # Connect
    f = open(pathLoc,'rb')                # file to send
    s.storbinary('STOR test.txt', f)         # Send the file
     
    f.close()                                # Close file and FTP
    s.quit()
    Merci de votre aide

  4. #4
    Membre éprouvé
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Par défaut
    Je ne sais si sa peut t'aider mais moi sa m'aide énormément de puisser dans la doc officiel concernant les modules inclus dans la bibliothèque standart, voici des liens suivant la version de python que tu utilise, pour télécharger la doc officielle dans le format que tu veut, si tu n'as pas encore torturer ton imprimante a mort...
    python2.6.7: http://docs.python.org/download.html
    python2.7.2: http://docs.python.org/download.html
    python3.0.1: http://docs.python.org/release/3.0.1/download.html
    python3.1.3: http://docs.python.org/release/3.1.3/download.html
    python3.2.1: http://docs.python.org/py3k/download.html
    ...pratique aussi quand tu n'as pas internet d'avoir la doc sur l'ordi. Il est toujours mieux de partir sur de bonne base et bien informer comme tu débute je te souhaite un bon python a toi.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 306
    Par défaut
    Voilà en fait mon problème est que c'était une connection Sftp pas pris en charge par ftplib donc j'ai utilise paramiko et pour ceux que ça intéresse voilà ce que j'ai fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    transport = paramiko.Transport((ip, port)) 
                transport.connect(username = user, password = passwd) 
                sftp = paramiko.SFTPClient.from_transport(transport) 
                sftp.put(pathLoc,pathServ) 
                sftp.close() 
                transport.close() 
                print 'Upload done.'

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

Discussions similaires

  1. pb de connection avec interbase
    Par devalender dans le forum Bases de données
    Réponses: 4
    Dernier message: 08/07/2004, 16h11
  2. connection avec une serveur interbase 4.0
    Par nicassy dans le forum InterBase
    Réponses: 2
    Dernier message: 08/06/2004, 12h53
  3. Connection avec MS Query (Excel) via ODBC MySQL
    Par javigle dans le forum Installation
    Réponses: 7
    Dernier message: 23/11/2003, 21h03
  4. [SYBASE] connectivity avec ODBC
    Par ora9i dans le forum Sybase
    Réponses: 8
    Dernier message: 03/09/2002, 22h39
  5. couper une connection avec un serveur corba
    Par pons dans le forum CORBA
    Réponses: 3
    Dernier message: 31/05/2002, 10h11

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