python 怎样通过遍历以下文件后全部读到mongodb数据库中

python 怎样通过遍历以下文件后全部读到mongodb数据库中,第1张

python 访问 mongodb 需要先安装 pymongo,如下:

1pip install pymongo

txt 文件格式:

代码如下:

#coding=utf-8 from pymongo import MongoClient conn = MongoClient('127001', 27017) # 连接 test 数据库,没有则自动创建db = conntest   # 使用 students 集合,没有则自动创建students = dbstudents # 打开学生信息文件, 并将数据存入到数据库with open('studentstxt', 'r') as f:         for line in freadlines():                 # 分割学生信息        items = linestrip('\r')strip('\n')split(',')                 # 添加到数据库        studentsinsert({ 'stu_id': items[0], 'name': items[1], 'grade': int(items[2]) }) # 数据库查询学生信息并打印出来for s in studentsfind():    print(s)

对于mongo的 *** 作,先安装mongodb的python扩展,在你的命令行窗口上输入:pipinstallpymongo,下面是例子,按需要修改frompymongoimportMongoClientimporttimemongo_uri_auth='mongodb://user:password@localhost:27017/'#mongo有要验证的话请自行替换user和passwordmongo_uri_no_auth='mongodb://localhost:27017/'#mongo没有账号密码验证的时候用这个database_name='request_db'#你要连接的数据库名,自行替换你需要的库名table_name='request_tb'#你要查询的表名,请自行替换你需要的表名client=MongoClient(mongo_uri_no_auth)#创建了与mongodb的连接db=client[database_name]table=db[table_name]#获取数据库中表的游标#你要插入的数据insert_data={"name":"Mike","grade":"two","age":12,"sex":"man"}tableinsert_one(insert_data)#插入一条数据#查询数据name为Mike的记录record=tablefind_one({"name":"Mike"})printrecord

1 基本实现

[root@localhost ~]# cat dirfilepy

import os

path='/tmp'

for dirpath,dirnames,filenames in oswalk(path):

for file in filenames:

fullpath=ospathjoin(dirpath,file)

print fullpath

执行结果如下:

[root@localhost ~]# python dirfilepy

/tmp/yumlog

/tmp/pulse-3QSA3BbwpQ49/pid

/tmp/pulse-3QSA3BbwpQ49/native

/tmp/esd-0/socket

获取当前位置,作为偏移值。

总体上readlines()不慢于python一次次调用readline(),因为前者的循环在C语言层面,而使用readline()的循环是在Python语言层面。但是readlines()会一次性把全部数据读到内存中,内存占用率会过高,readline()每次只读一行,对于读取大文件,需要做出取舍。

如果不需要使用seek()定位偏移,forlineinopen(file)速度更佳。使用readlines(),适合量级较小的日志文件importos。

以上就是关于python 怎样通过遍历以下文件后全部读到mongodb数据库中全部的内容,包括:python 怎样通过遍历以下文件后全部读到mongodb数据库中、如何有序遍历mongodb python、如何用Python实现目录遍历等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9630846.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存