Python3连接MongoDB并写入数据

个人博客地址:Python3连接MongoDB并写入数据 | 一张假钞的真实世界

安装PyMongo

复制代码
$ pip3 install pymongo
Successfully installed pymongo-3.7.2

连接MongoDB并且批量插入操作

复制代码
#!/usr/bin/python3

import mysql.connector
import gzip
import json
from pymongo import MongoClient
from datetime import datetime

opsDateTime = datetime.now().isoformat(timespec='seconds')

config = {
    'user': 'roHive',
    'password': 'hive@bigdata!23',
    'host': '172.16.72.22',
    'database': 'azkaban3',
    'raise_on_warnings': True,
    'charset': 'latin1'
}

cnx = mysql.connector.connect(**config)
cursor = cnx.cursor()
query = ("SELECT trigger_id, data FROM azkaban3.triggers")
cursor.execute(query)

scheduledList = []
for (triggerId, triggerData) in cursor:
    triggerJson = json.loads(gzip.decompress(bytes(triggerData, encoding='latin1')))
    actionJson = triggerJson['actions'][0]['actionJson']
    projectName = actionJson['projectName']
    flowName = actionJson['flowName']
    scheduledFlow = {'opsDateTime': opsDateTime, 'projectName': projectName, 'flowName': flowName}
    scheduledList.append(scheduledFlow)

cursor.close()
cnx.close()

mongoClient = MongoClient('mongodb://172.16.72.213:27017/')
opsDb = mongoClient.ops
azScheduled = opsDb.azScheduledFlow
azScheduled.insert_many(scheduledList)
相关推荐
Coding_Doggy6 分钟前
链盾shieldchiain | 团队功能、邀请成员、权限修改、移除成员、SpringSecurity、RBAC权限控制
java·开发语言·数据库
凯子坚持 c7 分钟前
不用复杂配置!本地 Chat2DB 秒变远程可用,跨网操作数据库就这么简单
数据库
q***65698 分钟前
Windows环境下安装Redis并设置Redis开机自启
数据库·windows·redis
interception10 分钟前
爬虫js逆向,jsdom补环境,抖音,a_bogus
javascript·爬虫·python
q***965814 分钟前
Windows版Redis本地后台启动
数据库·windows·redis
林炳然16 分钟前
Python-Basic Day-5 函数-生成器&装饰器
python
q***816418 分钟前
【Redis】centos7 systemctl 启动 Redis 失败
数据库·redis·缓存
q***098021 分钟前
MySQL 常用 SQL 语句大全
数据库·sql·mysql
q***649722 分钟前
VS与SQL Sever(C语言操作数据库)
c语言·数据库·sql
Yue丶越30 分钟前
【Python】基础语法入门(四)
linux·开发语言·python