Ошибка синтаксиса запроса MongoDB

#python #json #mongodb #twitch

#python #json #mongodb #Twitch

Вопрос:

Я столкнулся с проблемой при запросе коллекции, которую я создал из объектов Twitch JSON. Однако следующий запрос выдает «SyntaxError: недопустимый синтаксис».

 objflat = db.twitchstreams.find({'_links': [
    'streams': [
        {'channel': 
            {'game': gameName}
        }
    ]
})
 

Есть предложения? У меня все мои поля заключены в кавычки, кроме GameName, которая является переменной, извлеченной из конфигурационного файла игр, для которых мне нужны данные.

Ответ №1:

В вашей вложенной структуре данных у вас есть синтаксическая ошибка после «потоков». Список принимает только элементы, а не пары ключ / значение.

В приведенном ниже примере используется IPython:

Это работает:

 In [5]: {"foo":["bar"]}
 

Это не:

 In [6]: {"foo":["bar": 1]}
  File "<ipython-input-6-28ac5b9a1b6d>", line 1
{"foo":["bar": 1]}
             ^
 

Ошибка синтаксиса: недопустимый синтаксис