pyhton 利用 pexpect 模块实现 svn chekout
一,安装 pexpect
pip install pexpect
二,python 脚本实现
#!/usr/bin/env python # -*- coding: utf-8 -*- import pexpect username = ‘admin‘ password = ‘passwd‘ svnurl = ‘http://mysvnurl.com/svnproject‘ if __name__ == ‘__main__‘: svn_link = ‘svn co --username=admin ‘ + svnurl + ‘ .‘ # ‘.‘checkout 在当前目录 child = pexpect.spawn(svn_link) child.expect(‘Password for \‘admin\‘:‘, timeout=None) #如果子程序没有在指定的时间内生成任何 output,那么 expect() 和 read() 都会产生 TIMEOUT 异常。 #超时默认是 30s,可以在 expect() 和 spawn 构造函数初始化时指定为其它时间,如: #child.expect(‘password:‘, timeout=120) # 等待 120s #如果你想让 expect() 和 read() 忽略超时限制,即无限期阻塞住直到有 output 产生,设置 timeout 参数为 None。 child.sendline(password+‘\n‘) child.expect(‘Store password unencrypted (yes/no)?‘) child.sendline(‘yes\n‘) pass
时间: 2024-11-08 08:24:37