2012-04-25 3 views
0

La fonction suivante fonctionne quand je le lance de la ligne de commande avec python test.pyPython: wget ne fonctionne pas dans Eclipse

def get_pdb(self,pdb): 

     import os 
     from subprocess import call 

     os.chdir('./mobcal_data/PDBs/') 
     call(["wget", "http://www.pdb.org/pdb/files/2kqx.pdb"]) 

Mais quand je tente de l'exécuter avec Eclipse, je reçois le texte suivant OSError

OSError: [Errno 2] No such file or directory 

Je ne comprends pas pourquoi cela fonctionnera quand j'exécuterai le script depuis la ligne de commande et non dans eclipse.

+0

Que définit 'PATH' dans Eclipse? – Daenyth

Répondre

0

Je peux me tromper mais je pense que l'erreur peut provenir de l'appel os.chdir().

Vous avez probablement un répertoire de travail différent selon que vous exécutez le script manuellement ou via Eclipse. Essayez d'ajouter la ligne suivante, quelque part dans le script pour vérifier:

print os.getcwd() 

Si tel est le problème, vous devrez peut-être utiliser un chemin absolu au lieu d'un chemin relatif au os.chdir() appel, ou modifier la configuration dans Eclipse pour démarrer le script dans l'emplacement prévu. This answer a quelques instructions sur la façon de le faire.

+0

J'ai utilisé le code que vous avez suggéré et le répertoire de travail actuel a été modifié comme je l'avais prévu. – Harpal

+0

@Harpal - Essayez d'imprimer 'os.environ ['PATH']' pour voir si c'est différent dans Eclipse. –