当前位置:首页 » 编程语言 » mongodbpython连接

mongodbpython连接

发布时间: 2022-08-19 00:22:30

Ⅰ 请问如何用python将爬取的数据逐条传入MongoDB数据库,请大牛指点。

物信息、统计、网页制作、计算等多个领域都体现出了强大的功能。python和其他脚本语言如java、R、Perl 一样,都可以直接在命令行里运行脚本程序。工具/原料
python;CMD命令行;windows操作系统
方法/步骤
1、首先下载安装python,建议安装2.7版本以上,3.0版本以下,由于3.0版本以上不向下兼容,体验较差。

2、打开文本编辑器,推荐editplus,notepad等,将文件保存成 .py格式,editplus和notepad支持识别python语法。
脚本第一行一定要写上 #!usr/bin/python
表示该脚本文件是可执行python脚本
如果python目录不在usr/bin目录下,则替换成当前python执行程序的目录。
3、编写完脚本之后注意调试、可以直接用editplus调试。调试方法可自行网络。脚本写完之后,打开CMD命令行,前提是python 已经被加入到环境变量中,如果没有加入到环境变量,请网络

4、在CMD命令行中,输入 “python” + “空格”,即 ”python “;将已经写好的脚本文件拖拽到当前光标位置,然后敲回车运行即可。

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

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

1pipinstallpymongo

txt 文件格式:

代码如下:


#coding=utf-=MongoClient('127.0.0.1',27017)#连接test数据库,没有则自动创建db=conn.test#使用students集合,没有则自动创建students=db.students#打开学生信息文件,并将数据存入到数据库withopen('students.txt','r')asf:forlineinf.readlines():#分割学生信息items=line.strip(' ').strip(' ').split(',')#添加到数据库students.insert({'stu_id':items[0],'name':items[1],'grade':int(items[2])})#数据库查询学生信息并打印出来forsinstudents.find():print(s)

Ⅲ 请教一个python 链接mongodb问题

在这周学习Python tornado的过程中,接触了新的数据库mongo.
在刚开始连接的过程中,就出现了如下的问题,特此记录一下。
AttributeError: 'mole' object has no attribute 'Connection'

python版本2.7.11
pymongo版本3.3.0

根据网上的教程,首先导入pymongo,连接第一步的步骤大都是如下的
import pymongo
conn = pymongo.Connection('localhost',27017)

然后就报错啦啦啦啦!
AttributeError: 'mole' object has no attribute 'Connection'

然后发现我看的pymongo教程大都是几年前的,pymongo的版本应该也比较低。
后面网络,google了一下,原来是新的pymongo中取消了Connection这个方法。
新的版本需要新建一个client,然后才是连接。
>>> from pymongo import MongoClient
>>> client=MongoClient()
>>> client
MongoClient('localhost', 27017)

mongo_client – Tools for connecting to MongoDB

Ⅳ python测试mongo连接是否有效

(1)先在mongodb中执行
ISODate("2015-02-01T00:00:00Z").valueOf()

会得到
1422748800000

(2)使用可以使用以下条件进行查询
"lastAccessTime" : {$gte: new date(1422748800000)}
但是在python中会提示语法错误,
可以按照如下来解决:
from datetime import datetime
查询条件可以写成
"lastAccessTime" : {"$gte": datetime(2015, 2, 1)}
这样就可以解决了。

Ⅳ Python语言怎么实现mongodb的查询操作

对于mongo的操作,先安装mongodb的python扩展,在你的命令行窗口上输入:pip install pymongo,下面是例子,按需要修改

frompymongoimportMongoClient
importtime
mongo_uri_auth='mongodb://user:password@localhost:27017/'#mongo有要验证的话请自行替换user和password
mongo_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"}
table..insert_one(insert_data)#插入一条数据
#查询数据name为Mike的记录
record=table.find_one({"name":"Mike"})
printrecord

Ⅵ python怎么操作mongodb

#coding:utf-8__author__ = 'hdfs'import pymongofrom pymongo import MongoClientclient = MongoClient() client=MongoClient('10.0.0.9',27017)#连接mongodb数据库client = MongoClient('mongodb://10.0.0.9:27017/')#指定数据库名称db = client.test_database#获取非系统的集合db.collection_names(include_system_collections=False)#获取集合名posts = db.posts#查找单个文档posts.find_one()#给定条件的一个文档posts.find_one({"author": "Mike"})#使用ID查找需要ObjectIDfrom bson.objectid import ObjectIdpost_id='5728aaa96795e21b91c1aaf0'document = client.db.collection.find_one({'_id': ObjectId(post_id)})import datetimenew_posts = [{"author": "Mike", "text": "Another post!", "tags": ["bulk", "insert"], "date": datetime.datetime(2009, 11, 12, 11, 14)}, {"author": "Eliot", "title": "MongoDB is fun", "text": "and pretty easy too!", "date": datetime.datetime(2009, 11, 10, 10, 45)}]#插入多条记录result = posts.insert_many(new_posts)#返回插入的IDresult.inserted_ids#递归集合for post in posts.find(): post #递归条件集合for post in posts.find({"author": "Mike"}): post #文档的记录数posts.count() #区间查询d = datetime.datetime(2009, 11, 12, 12)for post in posts.find({"date": {"$lt": d}}).sort("author"): print post#给集合profiles建立索引 唯一索引result = db.profiles.create_index([('user_id', pymongo.ASCENDING)],unique=True)#查看索引信息list(db.profiles.index_information())#user_profiles = [{'user_id': 211, 'name': 'Luke'},{'user_id': 212, 'name': 'Ziltoid'}]result = db.profiles.insert_many(user_profiles) #聚合查询from pymongo import MongoClientdb = MongoClient('mongodb://10.0.0.9:27017/').aggregation_example#准备数据result = db.things.insert_many([{"x": 1, "tags": ["dog", "cat"]}, {"x": 2, "tags": ["cat"]}, {"x": 2, "tags": ["mouse", "cat", "dog"]}, {"x": 3, "tags": []}])result.inserted_ids'''{ "_id" : ObjectId("576aaa973e5269020848cc7c"), "x" : 1, "tags" : [ "dog", "cat" ] }{ "_id" : ObjectId("576aaa973e5269020848cc7d"), "x" : 2, "tags" : [ "cat" ] }{ "_id" : ObjectId("576aaa973e5269020848cc7e"), "x" : 2, "tags" : [ "mouse", "cat", "dog" ] }{ "_id" : ObjectId("576aaa973e5269020848cc7f"), "x" : 3, "tags" : [ ] }'''from bson.son import SON#$unwind 解开-后面的变量pipeline = [ {"$unwind": "$tags"}, {"$group": {"_id": "$tags", "count": {"$sum": 1}}}, {"$sort": SON([("count", -1), ("_id", -1)])} ]list(db.things.aggregate(pipeline))#使用聚合函数with commanddb.command('aggregate', 'things', pipeline=pipeline, explain=True)

Ⅶ 怎样使用python访问mongodb

  1. 安装驱动pymongo!

    输入命令:pip installpymongo

  2. 直接使用驱动

    缺点:

    不是全盘取代传统数据库(NoSQLFan:是否能取代需要看应用场景)

    不支持复杂事务(NoSQLFan:MongoDB只支持对单个文档的原子操作)

    文档中的整个树,不易搜索,4MB限制?(NoSQLFan:1.8版本已经修改为16M)

    特点(NoSQLFan:作者在这里列举的很多只是一些表层的特点):

    文档型数据库,表结构可以内嵌

    没有模式,避免空字段开销(Schema Free)

    分布式支持

    查询支持正则

    动态扩展架构

    32位的版本最多只能存储2.5GB的数据(NoSQLFan:最大文件尺寸为2G,生产环境推荐64位)

    Ⅷ python 连mongodb时怎么设定mongod服务端路径

    python连接mongodb操作数据示例,主要包括插入数据、更新数据、查询数据、删除数据等
    一、相关代码
    数据库配置类 MongoDBConn.py
    复制代码 代码如下:
    #encoding=utf-8
    '''
    Mongo Conn连接类
    '''
    import pymongo
    class DBConn:
    conn = None
    servers = "mongodb://localhost:27017"
    def connect(self):
    self.conn = pymongo.Connection(self.servers)
    def close(self):
    return self.conn.disconnect()
    def getConn(self):
    return self.conn
    MongoDemo.py 类
    复制代码 代码如下:
    #encoding=utf-8
    '''
    Mongo操作Demo
    Done:
    '''
    import MongoDBConn
    dbconn = MongoDBConn.DBConn()
    conn = None
    lifeba_users = None
    def process():
    #建立连接
    dbconn.connect()
    global conn
    conn = dbconn.getConn()
    #列出server_info信息
    print conn.server_info()
    #列出全部数据库
    databases = conn.database_names()
    print databases
    #删除库和表
    dropTable()
    #添加数据库lifeba及表(collections)users
    createTable()
    #插入数据
    insertDatas()
    #更新数据
    updateData()
    #查询数据
    queryData()
    #删除数据
    deleteData()
    #释放连接
    dbconn.close()
    def insertDatas():
    datas=[{"name":"steven1","realname":"测试1","age":25},
    {"name":"steven2","realname":"测试2","age":26},
    {"name":"steven1","realname":"测试3","age":23}]
    lifeba_users.insert(datas)
    def updateData():
    '''只修改最后一条匹配到的数据
    第3个参数设置为True,没找到该数据就添加一条
    第4个参数设置为True,有多条记录就不更新
    '''
    lifeba_users.update({'name':'steven1'},{'$set':{'realname':'测试1修改'}}, False,False)
    def deleteData():
    lifeba_users.remove({'name':'steven1'})
    def queryData():
    #查询全部数据
    rows = lifeba_users.find()
    printResult(rows)
    #查询一个数据
    print lifeba_users.find_one()
    #带条件查询
    printResult(lifeba_users.find({'name':'steven2'}))
    printResult(lifeba_users.find({'name':{'$gt':25}}))
    def createTable():
    '''创建库和表'''
    global lifeba_users
    lifeba_users = conn.lifeba.users
    def dropTable():
    '''删除表'''
    global conn
    conn.drop_database("lifeba")
    def printResult(rows):
    for row in rows:
    for key in row.keys():#遍历字典
    print row[key], #加, 不换行打印
    print ''
    if __name__ == '__main__':
    process()

    Ⅸ 关于Python连接Mongodb数据库的问题

    用法错了,应该是这样子
    >>> import pymongo
    >>> client = pymongo.MongoClient("localhost", 27017)

    Ⅹ python中mongodb怎么连接其他服务器的数据库

    1、基于mongo实现远程连接

    [plain] view plain

    mongo -u admin -p admin 192.168.0.197:27017/pagedb

    通过mongo实现连接,可以非常灵活的选择参数选项,参看命令帮助,如下所示:

    [plain] view plain

    mongo --help
    MongoDB shell version: 1.8.3
    usage: mongo [options] [db address] [file names (ending in .js)]
    db address can be:
    foo foo database on local machine
    192.169.0.5/foo foo database on 192.168.0.5 machine
    192.169.0.5:9999/foo foo database on 192.168.0.5 machine on port 9999
    options:
    --shell run the shell after executing files
    --nodb don't connect to mongod on startup - no 'db address'
    arg expected
    --quiet be less chatty
    --port arg port to connect to
    --host arg server to connect to
    --eval arg evaluate javascript
    -u [ --username ] arg username for authentication
    -p [ --password ] arg password for authentication
    -h [ --help ] show this usage information
    --version show version information
    --verbose increase verbosity
    --ipv6 enable IPv6 support (disabled by default)

    2、基于MongoDB支持的javascript实现远程连接

    当你已经连接到一个远程的MongoDB数据库服务器(例如,通过mongo连接到192.168.0.184),现在想要在这个会话中连接另一个远程的数据库服务器(192.168.0.197),可以执行如下命令:

    [plain] view plain

    > var x = new Mongo('192.168.0.197:27017')
    > var ydb = x.getDB('pagedb');
    > use ydb
    switched to db ydb
    > db
    ydb
    > ydb.page.findOne()
    {
    "_id" : ObjectId("4eded6a5bf3bfa0014000003"),
    "content" : "巴黎是浪漫的城市,可是...",
    "pubdate" : "2006-03-19",
    "title" : "巴黎:从布鲁塞尔赶到巴黎",
    "url" : "http://france.bytravel.cn/Scenery/528/cblsegdbl.html"
    }

    上述通过MongoDB提供的JavaScript脚本,实现对另一个远程数据库服务器进行连接,操作指定数据库pagedb的page集合。

    如果启用了安全认证模式,可以在获取数据库连接实例时,指定认证账号,例如:

    [plain] view plain

    > var x = new Mongo('192.168.0.197:27017')
    > var ydb = x.getDB('pagedb', 'shirdrn', '(jkfFS$343$_\=\,.F@3');
    > use ydb
    switched to db ydb

热点内容
车辆办理解压要收费怎么处理 发布:2025-01-19 18:39:46 浏览:950
san存储柜 发布:2025-01-19 18:39:35 浏览:63
伏魔记安卓版怎么什么键都没有 发布:2025-01-19 18:38:54 浏览:901
lol声音文件夹 发布:2025-01-19 18:38:54 浏览:317
锐程cc尊贵版都有哪些配置 发布:2025-01-19 18:27:08 浏览:977
php手机网站 发布:2025-01-19 18:26:34 浏览:456
一加存储路径 发布:2025-01-19 18:21:01 浏览:446
sqlserver误删 发布:2025-01-19 18:21:00 浏览:649
球球安全中心动态密码在哪里 发布:2025-01-19 18:20:23 浏览:790
python读取config文件 发布:2025-01-19 18:15:10 浏览:458