2016-06-29 12 views
0

Ubuntu VM 및 Python 2.7에서 web2py의 소스 버전을 실행 중입니다. 나는 SSH 기능에 대한 Paramiko 라이브러리를 사용하기 위해 노력하고있어,하지만, 다음 코드는이 오류를 제공합니다web2py에서 모듈을 사용할 때 전역 이름 'paramiko'가 정의되지 않았습니다.

코드

from paramiko import client

오류

Traceback (most recent call last): 
    File "/home/localadmin/scanme/gluon/restricted.py", line 227, in restricted 
    exec ccode in environment 
    File "/home/localadmin/scanme/applications/nmap/controllers/default.py", line 418, in <module> 
    File "/home/localadmin/scanme/gluon/globals.py", line 417, in <lambda> 
    self._caller = lambda f: f() 
    File "/home/localadmin/scanme/applications/nmap/controllers/default.py", line 50, in login 
    except paramiko.ssh_exception.AuthenticationException: 
NameError: global name 'paramiko' is not defined 

어떤 혼란을 필자는 web2py 외부에서 Python을 실행할 때 paramiko 라이브러리를 가져 와서 사용하면 시스템에서 완벽하게 작동합니다.

소스 코드를 사용할 때 로컬 파이썬 설치에서 사용 가능한 모든 모듈을 web2py에서 사용할 수 있다고 생각했습니다. 이것은 내가 명령 줄에서 웹 서버를 시작하는 방법입니다

python2.7 web2py.py

사람이이 문제를 일으킬 수있는 무엇을 알고 있나요? web2py에서 작동하는 다른 모듈을 가지고있는 것처럼 라이브러리를 설치 한 후 내 시스템에 "paramiko"디렉토리를 찾지 못했습니다.

from paramiko import client 

하지만 당신의 코드에서, 당신은 :

답변

1

가져 오기 문은

paramiko을 참조하기 위해
except paramiko.ssh_exception.AuthenticationException 

, 당신이 그것을 가져와야합니다 :

import paramiko 
+0

내가 시도 이제는이 줄에서 오류가 발생합니다 :'session.connection = ssh (credentials.vars.host_address, credentials.vars.username, cre "** 글로벌 이름 'ssh'가 정의되어 있지 않습니다 **" –

+0

걱정하지 마세요. 문제를 파악했습니다. 내 로컬 컴퓨터에서 web2py로 스크립트를 복사 할 때 클래스 "** ssh **"를 정의한 부분을 복사하지 않았다는 것을 알지 못했습니다. 감사! –