【发布时间】:2018-01-13 10:49:42
【问题描述】:
我对此进行了研究,但找不到为什么我正在尝试的方法不起作用,并且会警告我对 python 有点陌生,对 mongodb 也很陌生。我有一个 JSON 格式的推文 mongo 数据库,我试图通过 Python 和 pymongo 进行查询。我想为所有包含“IP”的推文返回“文本”和“created_at”字段。
我尝试了以下方法,当我通过终端执行此操作时效果很好:
db.tweets.find({text:/IP/},{text:1,created_at:1})
在 Python 中,经过实验我发现我需要将字段名称放在引号之间。我得到了以下类似的查询:
cursor = db.tweets.find({'created_at':"Thu Apr 28 09:55:57 +0000 2016"},{'text':1,'created_at':1})
但是当我尝试时:
db.tweets.find({"text": /.*IP.*/},{'text':1,'created_at':1})
或
cursor = db.tweets.find({'text':/IP/},{'text':1,'created_at':1})
我得到一个
'SyntaxError: invalid syntax' at the "/IP/" part of the code.
我正在使用 mongo 3.4.6 和 python 3.5.2
【问题讨论】:
标签: python regex mongodb pymongo