使用python的pexpect模块,实现远程免密登录的示例


Posted in Python onFebruary 14, 2019

说明

当我们需要用脚本实现,远程登录或者远程操作的时候,都要去解决如何自动输入密码的问题,一般来说有3种实现方式:

1).配置公钥私钥

2).使用shell下的命令,expect

3).使用python的pexpect模块

下面介绍的代码,是使用python的pexpect模块实现的:

代码

import os
import sys
import pexpect
import datetime

#获取昨天的日期
date_yes = (datetime.date.today()-datetime.timedelta(days=1)).strftime('%Y%m%d')
print date_yes
#远程拷贝名利
cmd="scp /home/lsh/xxx/huike/data/" + date_yes + " data@x.x.x.x:/home/inf/xxx/huike/data/" + date_yes
print cmd
#发送命令,开始执行
child = pexpect.spawn(cmd)
#匹配需要输入密码的状态
child.expect('.ssword:')
#向系统发送密码
child.sendline('123456789')
#结束子进程,不加的话,可能会报错
child.expect(pexpect.EOF)

以上这篇使用python的pexpect模块,实现远程免密登录的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用python写的一个wordpress的采集程序
Feb 27 Python
浅析Python中的多条件排序实现
Jun 07 Python
Python使用QRCode模块生成二维码实例详解
Jun 14 Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 Python
Python实现随机创建电话号码的方法示例
Dec 07 Python
Python类装饰器实现方法详解
Dec 21 Python
简单了解python调用其他脚本方法实例
Mar 26 Python
python--shutil移动文件到另一个路径的操作
Jul 13 Python
python接口自动化之ConfigParser配置文件的使用详解
Aug 03 Python
python之pygame模块实现飞机大战完整代码
Nov 29 Python
详解python 条件语句和while循环的实例代码
Dec 28 Python
python中openpyxl和xlsxwriter对Excel的操作方法
Mar 01 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
Feb 14 #Python
Python模拟百度自动输入搜索功能的实例
Feb 14 #Python
python 处理telnet返回的More,以及get想要的那个参数方法
Feb 14 #Python
python 多个参数不为空校验方法
Feb 14 #Python
python pexpect ssh 远程登录服务器的方法
Feb 14 #Python
Python之时间和日期使用小结
Feb 14 #Python
对Python Pexpect 模块的使用说明详解
Feb 14 #Python
You might like
神盾加密解密教程(一)PHP变量可用字符
2014/05/28 PHP
PHP微信开发之二维码生成类
2015/06/26 PHP
解决PhpStorm64不能启动的问题
2020/06/20 PHP
显示js对象所有属性和方法的函数
2009/10/16 Javascript
解析Jquery的LigerUI如何实现文件上传
2013/07/09 Javascript
firefox下jquery ajax返回object XMLDocument处理方法
2014/01/26 Javascript
AngularJS使用ng-options指令实现下拉框
2016/08/23 Javascript
利用js获取下拉框中所选的值
2016/12/01 Javascript
jquery表单提交带错误信息提示效果
2017/03/09 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
2017/03/16 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
Vue 页面状态保持页面间数据传输的一种方法(推荐)
2018/11/01 Javascript
Layui Form 自定义验证的实例代码
2019/09/14 Javascript
过滤器vue.filters的使用方法实现
2019/09/18 Javascript
微信小程序商品详情页底部弹出框
2019/11/22 Javascript
JS自定义右键菜单实现代码解析
2020/07/16 Javascript
Python+Django在windows下的开发环境配置图解
2009/11/11 Python
python selenium 获取标签的属性值、内容、状态方法
2018/06/22 Python
Pandas 按索引合并数据集的方法
2018/11/15 Python
HTML5 File接口在web页面上使用文件下载
2017/02/27 HTML / CSS
荷兰在线体育用品商店:Avantisport.nl
2018/07/04 全球购物
C#面试题
2016/05/06 面试题
What's the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
2015/11/10 面试题
企业元宵节主持词
2014/03/25 职场文书
超市开业庆典活动策划方案
2014/09/15 职场文书
校园环保广播稿(3篇)
2014/09/15 职场文书
小学庆六一主持词
2015/06/30 职场文书
2015年数学教研工作总结
2015/07/22 职场文书
中学生打架《检讨书》范文
2019/08/12 职场文书
python爬虫之利用selenium模块自动登录CSDN
2021/04/22 Python
快速学习Oracle触发器和游标
2021/06/30 Oracle
MySQL系列之六 用户与授权
2021/07/02 MySQL
vue使用refs获取嵌套组件中的值过程
2022/03/31 Vue.js
MySQL提取JSON字段数据实现查询
2022/04/22 MySQL
python标准库ElementTree处理xml
2022/05/20 Python
nginx七层负载均衡配置详解
2022/07/15 Servers