Installer et lancer Fanorona

Voici en français comment installer et lancer le petit programme fanorona en python sur debian/ubuntu :

apt-get install python-pygame python-numpy

wget https://github.com/mavenix/fanorona/archive/master.zip

unzip master.zip

cd fanorona-master

PYTHONPATH=lib/ ./fanorona

Sur windows

  • Installer python 2.x , au moment de la rédaction de ce ticket j’ai 2.7.6 donc j’ai pris Windows x86 MSI Installer (2.7.6) ici : http://www.python.org/downloads/windows/
  • Installer numpy sur son site http://www.numpy.org/ ou directement sur SF http://sourceforge.net/projects/numpy/files/NumPy/ , j’ai pris numpy-1.8.0-win32-superpack-python2.7.exe
  • Installer pygame http://pygame.org/download.shtml , j’ai pris pygame-1.9.1.win32-py2.7.msi
  • Télécharger et décompresser pyfanorona https://github.com/mavenix/fanorona/archive/master.zip
  • Ajouter la variable d’environnement PYTHONPATH dans votre windows en remplaçant avec les bonne valeurs comme iciPanneau de config > Système et sécurité > Système > Paramètre système avancés > Variables d’environnement …
    • variable => PYTHONPATH
    • valeur => C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;C:\Users\xxxx\Downloads\fanorona-master\lib
  • Modifier la variable PATH pour l’exécutable python, il faut faire très attention à la variable %PATH%!!! ajoute simplement ;C:\Python27 à la fin de la valeur .
  • Lancer cmd.exe et vérifier que les manipulations sont bonnes
    • echo %PATH%
    • echo %PYTHONPATH%
  • Lancer cmd.exe puis faire un cd C:\Users\xxxx\Downloads\fanorona-master\ puis python fanorona

fanorona

 

 

Automatiser les accès FTP,SFTP,SSH, … avec python pexpect

Voici un des moyens d’automatiser le téléchargement avec FTP,SFTP ou le lancement d’une commande avec ssh ou telnet, dans l’exemple, j’utilise le module python pexpect qui se connecter sur un serveur SFTP puis telecharge des fichiers. Pour ssh on peut utiliser le système de clés mais pour FTP, telnet ce n’est pas possible et si vous n’etes pas aussi l’admin du serveur distant.

Voici de code, évidemment il faut installer les paquets openssh-client et python-pexpect si vous utilisez ubuntu ou debian

#!/usr/bin/env python
import pexpect
p=pexpect.spawn('sftp -C -R 128 thierry@113.231.167.XXX')
p.expect("thierry@113.231.167.XXX's password: ")
p.sendline('MyVerySecurePassword')
p.expect('sftp> ')
p.sendline('get foo.bar /home/thierry/')
p.expect('sftp> ',timeout=None)
p.sendline('bye')

Ceci est un simple exemple vous pouvez l’améliorer en ajoutant un expect s’il demande d’accepter la clé du serveur …