python - 路由器 cli 界面的 pxssh 登录问题

标签 python linux

嗨,我正在尝试自动从 ruckless 无线路由器获取一些数据。

我使用了以下代码

 import pxssh
 s = pxssh.pxssh()
 s.login('192.168.2.100','admin','admin')

当我尝试登录自己时,我收到错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/pexpect/pxssh.py", line 321, in login
   raise ExceptionPxssh ('could not set shell prompt\n'+self.before)
  pexpect.pxssh.ExceptionPxssh: could not set shell prompt

Please login: unset PROMPT_COMMAND
Password: 
Login incorrect

Please login: set prompt='[PEXPECT]\$ '
Password: 

这不是像 Linux 那样的普通 bash shell。我猜它有自己的嵌入式操作系统和自己的外壳。

我如何登录并创建 session 。这样我就可以自动化一些任务

最佳答案

尝试使用 Python 的 paramiko ssh 客户端。这对我有用。 您可以使用 pip 来安装它。

apt-get 安装 python-pip

pip 安装 paramiko

在这里您可以找到如何使用:

http://www.minvolai.com/blog/2009/09/how-to-ssh-in-python-using-paramiko/

http://jessenoller.com/blog/2009/02/05/ssh-programming-with-paramiko-completely-different

关于python - 路由器 cli 界面的 pxssh 登录问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23623325/

相关文章:

python - Python 中的希尔伯特矩阵

python - Docker:使用容器名称从一个容器连接到另一个容器时,如何修复 "could not translate host name "postgres“到地址”?

python - 当引用计数为零时文件对象是否会自动关闭?

Linux调度器历史

c - PulseAudio录音和播放失败

python numpy csv标题在列而不是行

python - 我正在处理文本文件,我需要这个 :

linux - 将变量添加到 CSV 文件中的列

linux - 用 sed 替换/追加子字符串

linux - docker : 'go.mod: permission denied' on go commands