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)
相关推荐
2301_7931024914 分钟前
Linux——MySql数据库
linux·数据库
喵叔哟17 分钟前
第4章:Cypher查询语言基础
数据库
刘 大 望20 分钟前
数据库-联合查询(内连接外连接),子查询,合并查询
java·数据库·sql·mysql
ai大师25 分钟前
(附代码及图示)Multi-Query 多查询策略详解
python·langchain·中转api·apikey·中转apikey·免费apikey·claude4
小小爬虾1 小时前
关于datetime获取时间的问题
python
从零开始学习人工智能1 小时前
Doris 数据库深度解析:架构、原理与实战应用
数据库·架构
LiRuiJie1 小时前
深入剖析MySQL锁机制,多事务并发场景锁竞争
数据库·mysql
2501_915374352 小时前
Faiss向量数据库全面解析:从原理到实战
数据库·faiss
睡觉待开机2 小时前
0. MySQL在Centos 7环境安装
数据库·mysql·centos
2501_915374352 小时前
Faiss vs Milvus 深度对比:向量数据库技术选型指南
数据库·milvus·faiss