Заполните базу данных MongoDB вложенными словарями, используя Python - PullRequest
0 голосов
/ 11 января 2019

Я новичок в MongoDB.
Я хотел бы создать базу данных, которая имеет следующую структуру значений ключа, аналогичную словарю Python или файлу JSON (или, лучше, в чистом стиле MongoDB, поскольку это база данных значения ключа):

'doc name 1' : {
                'word number 1' : 'value1',
                'word number 2' : 'value2',     
                'word number 3' : 'value3',
                'word number 4' : 'value4',
                'word number 5' : 'value5'
                },
'doc name 2' : {
                'word number 1' : 'value1',
                'word number 2' : 'value2',     
                'word number 3' : 'value3',
                'word number 4' : 'value4',
                'word number 5' : 'value5'
                },
'doc name 3' : {
                'word number 1' : 'value1',
                'word number 2' : 'value2',     
                'word number 3' : 'value3',
                'word number 4' : 'value4',
                'word number 5' : 'value5'
            },
'and so on...': 'and so on...'

Сводка кода Python, который позаботится о заполнении базы данных, состоит из следующих команд:

"""CONNECTING TO DB"""
client = MongoClient('mongodb://localhost:27017/')
db = client['totworddb']

for doc in docs:
   fredDist = Counter(tokens)
   collection = db[doc]
   collection.insert_many([freqDist])

Этот фрагмент кода после выполнения выдает мне следующую ошибку:

pymongo.errors.ServerSelectionTimeoutError: localhost: 27017: [WinError 10061] Соединение не может быть установлено. Упорный отказ от целевой компьютер

Я, конечно, не использовал лучший способ выполнить задачу, которую хотел, но я даже не мог найти достаточно документации, чтобы найти хотя бы похожее решение. Мне очень любопытно понять, как работать с пимонго.

1 Ответ

0 голосов
/ 13 июня 2019

Мне удалось воспроизвести ошибку, с которой вы столкнулись. Сервер MongoDB не работает на вашем компьютере, когда вы выполняете этот код. После того, как вы установили MongoDB в вашей системе и добавили ее в системные переменные (или переменные PATH), вам нужно открыть командную строку и выполнить следующую команду: mongod. Это запустит сервер MongoDB на localhost: 27017 . Теперь вы можете запустить свой код в отдельной командной строке и начать вставлять данные в коллекцию MongoDB.

...