2014-02-21 5 views
0

Я сделал скрипт, который используется для запуска приложения на MacOS Это в основном управляет камерой с помощью и IP-адресPython 2.7.6 telnetlib жёстко Пароль

Моя проблема в том, что требуется пароль

Я используя пример http://docs.python.org/2/library/telnetlib.html#telnetlib.Telnet отсюда, но он не работает Я не хочу, чтобы он запрашивал у пользователя пароль, я просто хочу его HardCode каждый раз, когда приложение запускается.

if ip: 
     self.conn = telnetlib.Telnet(ip, 24) 
     self.consume_telnet() 
    else: 
     self.conn = None 


def telnet_send(self, s): 
    passCode = '********'        
    password = getpass.getpass() 
    if self.conn: 
     self.conn.write(s + '\r\n') 
     if password: 
      self.conn.read_until('Password: ') 
      self.conn.write(password.strip() + '\n') 

    else: 
     print s 
+0

Пожалуйста, добавьте важные части вашего кода и/или добавьте сообщения об ошибках, если они у вас есть. – CSchulz

+0

Я добавил код ... Пароль запрашивает у пользователя пароль. Я не хочу этого делать. Пароль нужен только один раз и никогда больше. – user3337714

+0

Можете ли вы помочь? Я все еще не могу обработать код. – user3337714

ответ

0

Пароль запрашивает getpass.getpass() звонок. Этот метод всегда запрашивает пароль пользователя. Проверьте эту страницу документа: http://docs.python.org/2/library/getpass.html

Я предполагаю, что вы выполняете инициализацию вне метода telnet_send. Просто настройте свой пароль внутри этого кода инициализации - что-то вроде self.password = getpass.getpass(), а затем используйте этот пароль в другом месте.

self.password = getpass.getpass() 

def telnet_send(self, s): 
    passCode = '********'        
    if self.conn: 
     self.conn.write(s + '\r\n') 
     if self.password: 
      self.conn.read_until('Password: ') 
      self.conn.write(self.password.strip() + '\n') 
    else: 
     print s 
+0

Спасибо за ответ. Он по-прежнему запрашивает у меня пароль. Я не хочу, чтобы он запрашивал у меня пароль. Я пробовал ваш код, но напрасно. Я просто хочу HARDCODE пароль, никакой пользовательский ввод никогда не нужен !! – user3337714

+0

Вы ожидаете запустить скрипт, который автоматически извлекает пароль пользователя unix? Это было бы плохо для пользователя, верно? Если пользователь соглашается ввести пароль в подсказке, это нормально - это его/ее ответственность. Но скриншот уборочного кода для сторонних пользователей довольно плох. Вы можете получить хэш пароля и т. Д. Попробуйте http://docs.python.org/2/library/hashlib.html –

+0

Это не имеет ничего общего с чем-то проблематичным Вышеприведенный код является частью моего модуля класса Он вызывает IP-адрес. IP-адрес предназначен для видеоконференции CAMERA. Код должен помочь Video-Admin изменить положение камеры. Он открывает диалоговое окно GUI с положением камеры. Вы можете щелкнуть по любой камере: теперь во время щелчка пароль требуется один раз, чтобы принять все изменения. Поэтому я хочу HardCode пароль для администратора видео. GUI не может запрашивать пароль, поэтому HardCODE является единственным выбором. Вышеприведенный код как-то не в состоянии реализовать то же самое. – user3337714

Смежные вопросы