MongoDB数据库名称:-testdb
,
集合名称:-test_collection
我要执行的MongoDB命令:-
db.getCollection('test_collection').find({ request_time: { $gte: new Date('2018-06-22'), $lt: new Date('2018-06-26') }});
在test_collection
的文档中,有一个称为request_time
的密钥。我想在('2018-06-22')
和('2018-06-26')
MongoDB用户名:-用户 MongoDB密码:-密码
MongoDB在端口27017上运行。
我在两件事上需要帮助。我可以连接到数据库,但是在身份验证的情况下如何提供用户名和密码。这是我的Python代码,
from pymongo import Connection
connection = Connection()
connection = Connection('localhost', 27017)
db = connection.testdb
collection = db.testcollection
for post in collection.find():
print post
另一件事是
我有一个名为mongodoc
的S3存储桶。我想查询该mongo命令并将结果文档导入S3存储桶。
我可以使用名为Boto的库连接到S3存储桶,
from boto.s3.connection import S3Connection
conn = S3Connection(AWS_KEY, AWS_SECRET)
bucket = conn.get_bucket(mongodoc)
destination = bucket.new_key()
destination.name = filename
destination.set_contents_from_file(myfile)
destination.make_public()
实现此目标的推荐方法是什么?
答案 0 :(得分:0)
如果提供身份验证,则必须提供用户名和密码以及主机名,
connection=Connection(hostname="",username="",password="")
对于s3连接,请尝试使用boto3而不是boto。 boto3提供了可用于s3客户端和资源的多种功能。查询后,您的mongodb结果可以以文件形式上传到s3存储桶。