Je cherchais depuis un moment pour savoir comment installer des modules Python sans avoir les droits, car notre installation de Python à l'université est sur un serveur distant.
Documentation : "Alternate installation path"
http://docs.python.org/inst/alt-install-windows.html#alt-install
Exemple (sur Windows ... svp valider pour Linux pour les fonctions systèmes :rolleyes:):
Import des modules nécessaire ...
import os
import sys
On change le répertoire actuel de Python, car nous n'avons pas accès au shell (ou DOS)
notrePath = '/votrepath'
os.chdir(notrePath)
On vérifie qu'on a bien changé de path courant
os.getcwd()
On execute le setup de la librairie qu'on désire installer avec comme argument --prefixe qui est dans le fond notre Lib/site-package alternatif. Fonction système pour Windows dans l'exemple... valider pour linux
instPth = '/notre_path_installation'
os.system(r'setup.py install --prefix= instPth ')
On s'assure que notre path alternatif est dans le sys.path. On fait un sys.path.append si ce n'est pas le cas. C'est possible qu'on doive refaire le sys.path.append vers notre site-package alternatif à chaque session si Python est remis tout le temps à zéro sur une installation réseau.
sys.path
Donc il est possible d'installer sans trop de problème des packages sans avoir les droits sur le site-package de Python. 🙂