expect è un modulo utilizzato per generare applicazioni figlio e controllarle. Sono interessato a pitone/rubino.posso usare aspettarsi su Windows senza installare cygwin?
risposta
C'è WExpect for Python.
Notes nel file wexpect.py
(errori di battitura invariato ed evidenziando aggiunto)
Wexpect è un porto di pexpext a Windows. Dal momento che Python per Windows non ha i moduli richiesti (pty, tty, select, termios, fctnl e resource) per eseguire pexpect, è stato necessario creare un back-end che implementasse tutte le funzioni utilizzate che si basavano su questi moduli . Wtty.py è questo back-end. In le console del mondo di Windows non sono omogenee. Possono utilizzare funzioni di input e output di livello basso o alto e per gestire correttamente entrambi i casi vengono creati due processi figlio per instacne di Spawn, con un figlio intermittente che può leggere continuamente dalla console e inviare tali dati una pipe a un'istanza di wtty. Spawner.py è resposabile dalla lettura e piping dati.
ho lasciato tanto codice intatto come ho potuto e anche cercato di lasciare il maggior numero di commenti intatto è possibile (espicially per le funzioni che non sono stati cambiati) tanti dei commenti saranno fuorviante nel loro rapporto a funzionalità specifica di . Inoltre, le funzioni sendcontrol e sendeof non sono limitate a questa volta, poiché non sono riuscito a trovare versioni di Windows significative di queste funzioni.
Inoltre, le console non hanno associato descrittori di fild su Windows, quindi la variabile globale child_fd sarà sempre None.
Usa pexpect https://github.com/pexpect/pexpect
"Pexpect è puro Python", in modo che verrà eseguito ovunque, senza Cygwin troppo,
edit: pexpect dipende modulo pty che è attualmente disponibile solo per Linux, in modo da Nik suggerito si dovrebbe usare wexpect che è una porta di pexpect
L'ultima versione di lavoro del wexpect vive a http://sage.math.washington.edu/home/goreckc/sage/wexpect/
Speriamo che sarà fusa a monte presto.
winpexpect
è una porta nativa di pexpect
in Windows. Si può trovare qui:
Lo so che è un vecchio post, ma ho utilizzato con successo Pexpect sotto Cygwin. Per ora non c'è altro modo a causa di problemi di compatibilità POSIX in Windows.
Un'altra cosa: WExpect funziona come Pexpect, infatti richiede Cygwin! A questo punto, PExpect è una scelta migliore.
Spero che questo vi aiuterà
Fabio
È possibile utilizzare le finestre CMD prompt.
È necessario avere python installato in Windows.
Aprire prompt cmd ed eseguire il comando di seguito.
C:\Users\xxx>pip install pexpect
(se avete impostato Python Percorso nella variabile di sistema)
o
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
- 1. Come installare sshpass su Windows tramite Cygwin?
- 2. Come installare CMake su Cygwin?
- 3. Esiste una versione di kdevelop che posso installare su Windows?
- 4. Impossibile installare libv8 gem su Cygwin
- 5. Come eseguire HBase in modalità distribuita su Windows senza Cygwin?
- 6. Installare VSTO SENZA usare Clickonce
- 7. Come posso installare jython su Windows 7?
- 8. Installare R Studio Server su Windows
- 9. Perché non posso chmod in cygwin su Windows 8 CP?
- 10. Come posso installare il modulo Perl senza usare CPAN.pm?
- 11. Come installare virtualenv senza usare sudo?
- 12. Come posso installare un pacchetto .egg Python su Windows (tentare di usare easy_install non funziona)
- 13. windows windows services with cygwin
- 14. Come installare OpenCV su Windows e abilitarlo per PyCharm senza usare il gestore pacchetti
- 15. Configurazione Hadoop su Windows tramite Cygwin
- 16. GitHub noobian, dovrei installare msysGit o Cygwin?
- 17. Come installare gevent su Windows?
- 18. Come posso installare le richieste con pip in cygwin?
- 19. Cygwin Newbie: come disinstallare Python 2.6.x da Cygwin e installare Python 2.7.x?
- 20. Come posso usare conda per installare pydotplus
- 21. Come installare Poppler su Windows
- 22. Come installare cairo su Windows
- 23. Installazione di Ant su Cygwin
- 24. Installare i buffer di protocollo su Windows
- 25. Come posso installare e utilizzare la libreria ack su Windows?
- 26. Come posso installare MongoDB 3.X su Windows senza diritti di amministratore?
- 27. Node.js non trova il modulo - interferisce con cygwin su Windows
- 28. Passi su come installare PySide su Windows
- 29. Posso installare pacchetti Windows Python in virtualenvs?
- 30. Come posso usare conda per installare pydot?
@Symmetric: hai cambiato il collegamento a punto su [ 'winpexpect'] (http: // bitbucket .org/geertj/winpexpect). Ma ['wexpect'] (http://sage.math.washington.edu/home/goreckc/sage/wexpect/) è un modulo diverso. – jfs
@ J.F.Sebastian: buon punto, quei vecchi collegamenti erano rotti quindi non ero in grado di trovare molto su wexpect. Fisso. – Symmetric