Python 我可以在Windows上使用Expect而不安装Cygwin吗?
Expect是一个用于生成子应用程序并控制它们的模块。我对Python和Ruby感兴趣。使用pexpect “Pexpect是纯Python”,因此它可以在任何地方运行,也不需要Cygwin 编辑:pexpect依赖于当前仅适用于Linux的pty模块,因此Nik建议您使用wexpect,它是pexpect的一个端口Python 我可以在Windows上使用Expect而不安装Cygwin吗?,python,ruby,expect,Python,Ruby,Expect,Expect是一个用于生成子应用程序并控制它们的模块。我对Python和Ruby感兴趣。使用pexpect “Pexpect是纯Python”,因此它可以在任何地方运行,也不需要Cygwin 编辑:pexpect依赖于当前仅适用于Linux的pty模块,因此Nik建议您使用wexpect,它是pexpect的一个端口 wexpect.py文件中的注释(拼写保持不变并添加突出显示) Wexpect是pexpext到Windows的一个端口。因为python for Windows缺少 运行所需的模
wexpect.py
文件中的注释(拼写保持不变并添加突出显示)
Wexpect是pexpext到Windows的一个端口。因为python for Windows缺少
运行所需的模块(pty、tty、select、termios、fctnl和资源)
预期,有必要创建一个实现任何功能的后端
依赖于这些模块使用的。Wtty.py就是这个后端。在里面
Windows world控制台不是同质的。它们可以使用低电平或高电平
水平输入和输出功能,并正确处理两种情况
子进程是为Spawn的instacne创建的,带有一个中间子进程
它可以连续地从控制台读取数据,并通过管道发送数据
到wtty的一个实例。Spawner.py由阅读和配管负责
数据
我尽可能完整地保留了大量代码,并尝试留下尽可能多的注释
完整性是可能的(特别是对于未更改的功能)如此之多
这些评论中的大多数与操作系统相关,会产生误导
功能。此外,sendcontrol和sendeof功能目前尚未实现
这一次,因为我找不到这些功能的有意义的Windows版本。此外,控制台在Windows上没有相关的fild描述符,因此 全局变量child_fd将始终为无
wexpect的最新工作版本位于
希望它能很快合并到上游。
winpexpect
是Windows的pexpect
本机端口。可以在这里找到:
我已经在Cygwin下成功使用了Pexpect。由于Windows下的兼容性问题,目前没有其他方法 另一件事:WExpect和Pexpect一样工作,事实上它需要Cygwin!
此时,PExpect是一个更好的选择。您可以使用Windows CMD提示符 您需要在Windows安装中安装Python 打开cmd提示符并执行以下命令:
C:\Users\xxx>pip install pexpect
(如果在系统变量中设置了Python路径)
或
@对称:您已将链接更改为指向。但这是一个不同的模块。@J.F.Sebastian:好的地方,那些旧链接被破坏了,所以我无法找到很多关于wexpect的信息。已修复。您可以安装它,但请注意,windows没有本机支持。windows使用中存在以下问题:
C:\Users\xxx>c:\python27\scripts\pip.exe install pexpect
Collecting pexpect
Downloading pexpect-4.0.1.tar.gz (143kB)
100% |################################| 147kB 1.2MB/s
Collecting ptyprocess>=0.5 (from pexpect)
Downloading ptyprocess-0.5.1-py2.py3-none-any.whl
Building wheels for collected packages: pexpect
Running setup.py bdist_wheel for pexpect
Stored in directory: C:\Users\xxx\AppData\Local\pip\Cache\wheels\f2\65\89\09578bcd0efeabc7e2b0079cd62d3955c1477f2e55aa5031a4
Successfully built pexpect
Installing collected packages: ptyprocess, pexpect
Successfully installed pexpect-4.0.1 ptyprocess-0.5.1