一个python批量给mongodb添加数据例子

来源:互联网 发布:哈尔堡工业大学 知乎 编辑:程序博客网 时间:2024/06/15 22:20
#!/usr/bin/python
# coding: utf-8

import pymongo;
import sys;
import re;

def ooIp2Hostname(OoIp) :
# 10.1.2.3 -> s10-1-2-3
    OoHostname = re.sub('\.', '-', OoIp);
    OoHostname = 's' + OoHostname;
    return(OoHostname);


def ooCheckIpInMongo(OoIp, OoConn) :
# check whether a ip already in mongo.
    OoFind = OoConn.salt.pillar.find({'p2p_local_ip': OoIp});
    return(OoFind.count());

def ooAddOnePillarMongo(OoIp, OoConn) :
    OoHostname = ooIp2Hostname(OoIp);
    if ooCheckIpInMongo(OoIp, OoConn) == 0 :
        OoConn.salt.pillar.insert({'_id': OoHostname,
            'p2p_local_ip': OoIp});

def ooAddPillarMongo() :
    OoFd = open('allip.txt', 'r');
    OoList = OoFd.readlines();
    try :
        OoConn = pymongo.connection.Connection('localhost');
    except :
        return;
    for x in OoList :
        x = x.strip();
        ooAddOnePillarMongo(x, OoConn);

def main() :
    ooAddPillarMongo();
                                                              1,5           Top

0 0
原创粉丝点击