Форум сайта python.su
Добрый день!
Решил остановиться на get_accounts_from_file, создал файл.cfg, но при попытке подключения к оборудованию выдает ошибку:
Traceback (most recent call last):
File “C:<>.py”, line 14, in <module>
con.login(account)
File “C:<>\protocol.py”, line 671, in login
with self._get_account(account) as account:
File “C:\<>\protocol.py”, line 647, in _get_account
account.__enter__()
AttributeError: ‘list’ object has no attribute ‘__enter__’
Сам код для подключения:
account = get_accounts_from_file('accounts.cfg') # если здесь в явном виде прописать login/password все работает прекрасно
con = SSH2()
con.connect(l.strip()) #берем ip для подключения из файла
con.login(account)
con.execute('')
Есть у кого идеи что не так?
Офлайн
покажите ‘accounts.cfg’
версию python
УМВР на ubuntu 14.04
Prerequisites
Exscript requires Python 2.7, and the following modules:
future
configparser
pycryptodomex
paramiko>=1.17
Отредактировано papuas (Март 5, 2018 19:56:50)
Офлайн
account-pool # в квадратных скобках, но почему то на форуме они не отображаются
cisco = Y2lzY28=
Python 3.6.1
Exscript в принципе работает нормально, единственный нюанс только с чтением логина\пароля из файла
Отредактировано valloru (Март 6, 2018 09:52:03)
Офлайн
.login() - ожидает инстанс Account('user', ‘password’), а вы пытаетесь передать список
[Account(), Account()]
accounts = get_account_from_file('accounts.cfg') accounts [<Exscript.account.Account object at 0x000001610668DD68>, <Exscript.account.Account object at 0x00000161066C7588>]
from Exscript.util.start import start start(accounts, hosts, do_something)
for account in accounts: conn.login(account)
Отредактировано papuas (Март 6, 2018 14:32:53)
Офлайн
papuas, спасибо большое, то что нужно
Офлайн