实时获取远程文件

最近项目有个需求,去固定的主机上获取一个文件,定时更新另外一台主机数据库上的数据。


现在将需求详细如下:


需求: 给定了主机 A 的IP ,用户名和密码,以及 A 上 文件的具体位置;

目的:要求读取A 主机文件中的信息,并将该信息更新到B主机上的数据库中。


分析:无法直接获取文件,并读取里面的内容,但如果能将A主机上的文件放到B 主机上来,一切都OK 了。


实现主要步骤有:

1. 编写获取文件的程序。

使用python语法实现:


import os
import paramiko
import time

HOST = '1.1.1.1'
USER = 'ddd'
PASSWD = 'aabs'

COMMAND = 'cat /data01/demo.xml'
FILENAME = '/home/data01/demo.xml'

def main():
    ssh=paramiko.SSHClient();
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    print 'Login......'
    try:
        ssh.connect(HOST, username=USER, password=PASSWD)
    except paramiko.AuthenticationException:
        print 'ERROR: check password......'
        return
    except:
        print 'ERROR: ip unreachable......'
        return
    print 'Login success......'

    while True:
        stdin, stdout, stderr=ssh.exec_command(COMMAND)
        output=open(FILENAME, 'w')
        try:
            output.write(stdout.read())
        except IOError as error:
            print 'ERROR: {0}......'.format(errno)
            os.unlink(FILENAME)
        else:
            output.close()
            print '*** Downloaded success......'

        print 'Sleep 10 seconds......'
        time.sleep(10)

    return

if __name__ == '__main__':
    main()


2.部署程序运行结果

省略 ...

3.获得文件中的信息,并更新数据库

省略 ...

4.到数据库中去查看,核对信息。

省略...


难点:python 语法,以及pyton 的写法获取文件。


详细文件的地址:http://download.csdn.net/detail/supingemail/7391177


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值