广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python[10] mongodb模
  • 199
分享到

Python[10] mongodb模

Pythonmongodb 2023-01-31 07:01:10 199人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

今天和大家分享一个python入库mongoDB的脚本。。。涉及到Python和monGodb,那么安装相应的模块四必不可少的,最简单的安装方法,或者非pip不可了。# pip install pymongo==3.0.4顺便也记录下源码安

今天和大家分享一个python入库mongoDB的脚本。。。

涉及到Python和monGodb,那么安装相应的模块四必不可少的,最简单的安装方法,或者非pip不可了。

# pip install pymongo==3.0.4

顺便也记录下源码安装的方式

# wget https://pypi.python.org/packages/source/p/pymongo/pymongo-2.8.tar.gz#md5=23100361c9af1904eb2d7722f2658114 --no-check-certificate
# tar xf pymongo-2.8.tar.gz
# cd pymongo-2.8
# python setup.py install


摘自一则日志

35783   s100    Android 47  5   192.168.1.100   2015-09-05 08:03:19    strengthenHeroByHeroes  {"consume_gold":{"ogold":2893821,"cgold":1700,"gold":2892121,"tag":"strengthenHeroByHeroes"},"taskInfo":[{"id":2310033,"progress":2,"status":0}],"delHeroList":{"id":102014,"id":102014,"id":102014,"id":102010,"id":102010},"id":100026,"olevel":46,"oexp":1700,"cexp":1700,"level":46,"exp":3400} 865982021462182     XiaoMi


入库mongodb的python脚本

[root@localhost opt]# cat analytical.py 
#!/usr/bin/env python
#coding:utf8

import os,sys,JSON
from datetime import * 
from pymongo import MongoClient

def ConMongo(host,port,cur_db,username,passWord):
    client = MongoClient(host,port)
    db = client[cur_db]
    db.authenticate(username,password)
    table = db.gamelogs
    return table

def parseLog(logfile,table):
    dic = {}
    dl = []
    with open(file_log) as fd:
        for line in fd:
	    try:
	        tokens = line.strip().split('\t')
	        uid = tokens[0]
	        server = tokens[1]
	        system = tokens[2]
	        level = int(tokens[3])
	        vip_level = tokens[4]
	        ip = tokens[5]
	        time = datetime.strptime(tokens[6], "%Y-%m-%d %H:%M:%S")		#将时间字符串转换成时间格式
	        action = tokens[7]
	        result = json.loads(tokens[8])						#特殊字符串转换成json格式
	        uuid = tokens[9]
		if len(tokens) == 12:
	        channel = tokens[11]
		else:
		    channel = ''
	        dic = {'uid':uid,'server':server,'system':system,'level':level,'vip_level':vip_level,'ip':ip,'time':time,'action':action,'result':result,'uuid':uuid,'channel':channel}
		dl.append(dic)
		if len(dl) == 10000:
		    table.insert_many(dl)
		    dl = []
	    except Exception,e:
		    print e, line
	if len(dl) > 0:
	    table.insert_many(dl)

if __name__ == '__main__':
    table = ConMongo('localhost',27017,'talefundb','talefun','123456')
    try:
	    logfile = sys.argv[1]
        parseLog(logfile,table)
    except IndexError,e:
	    print e

注意事项:

(1)insert_many参数是mongodb 3.0.4中新加的,允许你将一个大列表直接insert到mongodb数据库中
(2)脚本中做了限制,如果字典中有2000个值,就向mongodb插入一次数据,这样在效率上得到了保证
(3)不建议直接复制脚本测试,很多粘贴出来后,很多制表符等会出现问题。我会吧脚本放在云盘上大家可以下载,测试用。


wKioL1X6vqHgz6F8AAHb0c8Iosc628.jpg


点击可下载:Http://pan.baidu.com/s/1qWtbgjq


--结束END--

本文标题: Python[10] mongodb模

本文链接: https://www.lsjlt.com/news/191585.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python[10] mongodb模
    今天和大家分享一个python入库mongodb的脚本。。。涉及到python和mongodb,那么安装相应的模块四必不可少的,最简单的安装方法,或者非pip不可了。# pip install pymongo==3.0.4顺便也记录下源码安...
    99+
    2023-01-31
    Python mongodb
  • 【MongoDB学习笔记10】MongoDB的启动和关闭
    一、MongoDB启动MongoDB用mongod命令来启动,不建议用service mongod start或者chkconfig mongod on来启动Mong...
    99+
    2022-10-18
  • python 10
    os.path.  split(): 返回dirname() basename() 组成元组。  splitext(): 返回(filename,extension) 元组。   信息:   getatime   getctime   ge...
    99+
    2023-01-31
    python
  • Python中如何使用mongodb模块
    这篇文章给大家介绍Python中如何使用mongodb模块,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。涉及到python和mongodb,那么安装相应的模块四必不可少的,最简单的安装...
    99+
    2022-10-18
  • 10.网络爬虫—MongoDB详讲与实战
    网络爬虫—MongoDB详讲与实战 MongoDBMongoDB安装创建数据目录1.数据库操作2.集合操作3.文档操作4.索引操作5.聚合操作6.备份与恢复 MongoDB增删改查mong...
    99+
    2023-09-10
    爬虫 mongodb 数据库 python
  • python银行卡号码校验Luhn模10算法
    目录一、银行卡号码的校验规则二、生成符合Luhn规则的银行卡号测试数据思路:实现代码:三、小结相关资料有时候在网上办理一些业务时有些需要填写银行卡号码,当胡乱填写时会立即报错,但是并...
    99+
    2022-11-11
  • Python练习10
    无意看到老男孩的博文:合格linux运维人员必会的30道shell编程面试题及讲解http://oldboy.blog.51cto.com/2561410/1632876尝试着用刚开始学的python解答一些,权当练手了!如有错误,还请批评...
    99+
    2023-01-31
    Python
  • 10. Python 帮助
    1.      学习查看python的帮助(1)当我们要查看python变量属于哪个数据类型的时候,我们可以用print (type(varible))(2)当我们要查看一个变量有哪些具体方法的时候varible = dict(a=1, b...
    99+
    2023-01-31
    Python
  • mongodb报错:Mon Mar 25 10:41:10 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
    mongodb启动报错启动mongodb时遇到一个问题:MongoDB shell version: 2.0.6connecting to: testMon Mar 25 10:41:10 Error: ...
    99+
    2022-10-18
  • 【Python】10、python内置数
    一、集合1、集合的定义In [74]: s = {} In [74]: s = {}    # 空大括号是空的字典 In [75]: type(s) Out[75]: dict In [77]: type(s) Out[77]: set...
    99+
    2023-01-31
    Python python
  • MongoDB数据库常用的10条操作命令
    目录1. 显示全部可用数据库2. 切换数据库3. 显示数据集4. 插入数据5. 更新数据6. 替换文档7. 查询数据8. 统计条数9. 删除文档10. 查看帮助文档1. 显示全部可用...
    99+
    2022-11-12
  • Python的MongoDB模块PyMongo操作方法集锦
    开始之前当然要导入模块啦: >>> import pymongo 下一步,必须本地mongodb服务器的安装和启动已经完成,才能继续下去。 建立于MongoClient 的连接: ...
    99+
    2022-06-04
    操作方法 集锦 模块
  • #10 Python字符串
    前言 通过上一节可知,Python6个序列的内置类型中,最常见的是列表和元组,但在Python中,最常用的数据类型却不是列表和元组,而是字符串。要想深入了解字符串,必须先掌握字符编码问题。因此本篇博文将讲解Python字符编码问题和Pyt...
    99+
    2023-01-30
    字符串 Python
  • 【Python基础】10、MySQLdb
    一、MySQLdb模块        python访问mariadb|mysql依赖于第三方模块MySQLdb,在pypi上下载下来路径:https://pypi.python.org/pypi/MySQL-python/ MySQL-py...
    99+
    2023-01-31
    基础 Python MySQLdb
  • mongodb之master/slave模式
    ### mongodb的主从配置(不带auth认证)### 注意事项:    - 服务器节点之前时间要同步    - 开启防火墙的一定要允许通过相关端口&n...
    99+
    2022-10-18
  • Mongodb主从模式篇
    主从模式架构图:主从配置安装:10.10.20.160(master)-->10.10.20.161(slave)Master:tar zxvf mongodb-linux-x86_64-2.2.2....
    99+
    2022-10-18
  • Mongodb replica set模式篇
    复制集架构图:三节点replicaset配置安装(无仲裁节点):Replica set 【10.10.20.161-10.10.20.163】10.10.20.161-10.10.20.163这三台按下面的...
    99+
    2022-10-18
  • Python练手例子(10)
    55、学习使用按位取反~。 程序分析:~0=1; ~1=0; (1)先使a右移4位。 (2)设置一个低4位全为1,其余全为0的数。可用~(~0<<4) (3)将上面二者进行&运算。 #python3.7 if __...
    99+
    2023-01-30
    例子 Python
  • 我10亿级ES数据迁到MongoDB节省90%成本!-
    转载:https://www.sohu.com/na/467051591_411876 作者介绍 杨亚洲,前滴滴出行专家工程师,现任OPPO文档数据库MongoDB负责人,负责数万亿级数据量文档数据库MongoDB内核研发、性能优化及运维...
    99+
    2017-12-03
    我10亿级ES数据迁到MongoDB节省90%成本!-
  • Python统计学10——时间序列分析自回归模型(ARIMA)
    时间序列也是传统统计学很重要的一个领域,现代经济类的数据基本都是时间序列数据。时间序列最经典的模型自然是ARIMA模型,全称是自回归积分滑动平均模型(Autoregressive Integrated Moving Average Mode...
    99+
    2023-10-04
    python 回归 数据分析 pandas 机器学习
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作