问题标签 [pexpect]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
564 浏览

python - Python:在 Pexpect 模块中模拟 re.findall

是否可以在 pexpect 模块中模拟 re.findall ?

我目前有一个使用 pexpect 将 ssh 连接到服务器的脚本。然后我让它向服务器发送一个命令,该命令在 p.before 中返回一堆行(p 是一个 pexpect spawn):

注意:我在示例中使用的 ip 地址是我仅用于此示例的随机 IP 地址。在实际脚本中,它可以是任何 ip 地址。我试图找到的信息是 IP 地址。

pexpect 可以做类似 re.findall 的事情吗?还是我必须这样做re.findall(regex, p.before)?

0 投票
3 回答
28813 浏览

python - 未使用 pexpect 超时,仅使用默认值 30

我正在尝试进行冗长的操作,但使用 timeout 参数的 pexpect 似乎并没有改变触发超时异常之前的时间长度。这是我的代码:

异常显示 timeout=30,这是默认值。

0 投票
1 回答
219 浏览

python - 使用 Python/Pexpect 爬取网络

这更像是一个逻辑思维问题而不是编码问题。我已经有一些工作代码块 - 一个远程登录到设备,一个解析命令结果,一个填充字典等

现在假设我想分析一个具有未知节点、a、b、c 等的网络(但我只知道 1 个)

我给我的代码块节点a。结果是一个包含 b、c 的表格。我把它保存在字典里

然后我想使用第一个条目 (b) 作为目标,看看它可以看到什么。可能是 d、e 等并将这些(如果有)添加到 dict

然后在这个新填充的字典中的下一个节点上执行相同的操作。最终输出将是所有节点都只被访问过一次,并且所有看到的设备都记录在这个(或另一个)字典中。

但是我不知道如何随着字典的增长继续重新阅读它,我也不知道如何避免多次查看设备。

我知道这对我来说比我解释的更清楚,如果造成混淆,请道歉

0 投票
1 回答
2686 浏览

comparison - 什么是 Expect 可以做而 Pexpect 不能做的?

我正在考虑开始使用 Pexpect。在 Pexpects 主页上,我发现:

问:为什么不直接使用 Expect?

答:我喜欢。这很棒。我已经让我摆脱了一些真正的障碍,但我想要的东西能够满足我对 Expect 的 90% 的需求;为大小的 10%;并允许我用 Python 而不是 TCL 编写我的代码。Pexpect 没有Expect 大,但Pexpect 可以完成我曾经使用过Expect 的所有功能。

Pexpect 和 Expect 之间有 10% 的差异。所以我的问题是这 10% 的差异是什么。什么是Expect 可以做而Pexpect 不能做的。

0 投票
3 回答
246 浏览

python - 如何使用 Python 控制 links2

如何使用 Python 执行 links2 以打开网页并找到并单击文本链接?

pexpect 能做到吗?任何例子都值得赞赏。

0 投票
1 回答
411 浏览

python - 使用 pexpect 监听来自 virtualbox 的端口

我正在尝试在 python 中创建一个 tcplistener(必要时使用 pexpect)来侦听来自 windows xp 主机上 virtualbox 中 Ubuntu 的 tcp 连接。如果你们中的一个人能指出我正确的方向,我将不胜感激。谢谢你。

PS:我在这方面的经验有限,欢迎任何帮助。

0 投票
4 回答
4552 浏览

python - Pexpect - 静默 ssh 连接输出

我正在使用一个简单的 pexpect 脚本来 ssh 到远程机器并获取命令返回的值。有什么办法,pexpect 或 sshwise 我可以用来忽略 unix 问候语吗?也就是说,从

我怎样才能简单地获取返回值,忽略“上次成功登录”和“(c)版权”的东西,而不必关心值的正确位置?

谢谢 !

0 投票
3 回答
5496 浏览

python - 织物与预期

我偶然发现了pexpect,我的印象是它看起来与fabric大致相似。我试图找到一些比较,但没有成功,所以我在这里问——以防有人对这两种工具都有经验。

我的印象(它们大致相当)是正确的,还是只是表面上的样子?

0 投票
2 回答
8377 浏览

python - 如何使用pexpect在python中获取子进程的自发输出

这与我关于 wx.TextCtrl (或底层 GTK+) 的另一个帖子多线程问题有关,在通过从主线程调用 GUI 交互进行更正后,我发现它再次涉及管道块缓冲问题。那么如何从 subprocess.stdout 中获得自发输出?

简而言之,目前我正在使用 subprocess.popen 来启动一个外部长时间运行的程序。

我使用单独的线程来读取后台程序的标准输出,用“wx.CallAfter”进行回调。

上面的代码打印出子进程日志消息块-挂-块(而不是自发逐行),最糟糕的是直到用户发送下一个输入时才能及时打印剩余的5-6行日志消息。

从我的旧帖子中,我知道有 pty 和 pexpect,这可能会使子进程认为它正在与伪 tty 交互。但是应该如何使用pexpect,尤其是考虑到后台进程是长期的、独立运行的任务?

例如,如果我使用

如何获取子进程的输出和输入,这样我就可以使用 wx.TextCtrl 打印输出,也可以使用 wx.TextCtrl 将用户输入转发到子进程?

0 投票
1 回答
5924 浏览

python - 将 pexpect 的输出重定向到文件

我试图在文件中捕获 pexpect 的输出。

但是mylogfile.txt不接收输出。该文件已创建但为空。