mongodb错误:ConfigurationError:端口号必须是整数

0 投票
1 回答
4863 浏览
提问于 2025-04-17 21:15

我刚接触mongodb,正在使用mongolab创建一个免费的数据库。我的数据库名字叫enron,里面有一个集合叫mbox。我的系统里有一个json文件。我想用python把这个json文件导入到集合里。我的数据库连接成功了,但在导入json文件时出现了错误。请给我一个合适的解决办法。

 import os
 import sys
 import envoy
 from bson import json_util # Comes with pymongo
 from pymongo import MongoClient


 client = pymongo.MongoClient('mongodb://user:user123@ds033499.mongolab.com:33499/enron')
 r = pymongo.MongoClient('mongoimport --host mongolab.com --port 033499 --username    pramod_jadhav --password p9822581103 --collection mbox --db enron --file C:\Users\sachin\Documents\IPython \ch06-mailboxes\data\enron.mbox.json')
 print 'json import sucessfully'

1 个回答

2

在这里,我们需要处理网址,这样它就能正确处理一些特殊字符(比如@)。为此,我们需要导入一个叫做urllib的库,然后使用这个方法 urllib.parse.quote([mongo _lab_url])

在你的情况下,

import urllib

db_url = urllib.parse.quote('mongodb://user:user123@ds033499.mongolab.com:33499/enron')

client = MongoClient(db_url)

应该可以正常工作!!!

撰写回答