我正在运行一个将一些数据推送到 MongoDB 数据库的脚本。现在我试图让另一个 Python 脚本在每次添加时在我的数据库上打印新条目。
例如:
如果将数字 80 添加到数据库中,则脚本应从集合中提取 80,并在将其添加到数据库后立即将其打印到我的控制台。
我的实际工作运行良好。唯一的问题是,如果我删除time.sleep()它,它将开始快速打印每个条目。
同样,现在,它不是打印新条目,而是打印整个集合 + 新条目,而不是仅打印新条目(我正在尝试这样做,因为将来我希望我的脚本获取数据并稍后将其提供给 Python 数组)。
我不能使用 change_stream,因为我的数据库不是副本集,我对此很陌生,所以我对副本集了解不多。
可以使用可尾游标,但使用有上限的数据库不是最好的选择,因为我将每 5 秒推送一次数据,并且有一个“限制”(这不是有上限的意思吗?)不会是最好的.
有什么建议吗?
from pymongo import MongoClient
import time
import random
from pprint import pprint
client = MongoClient(port=27017)
arr = []
db = client.one
mycol = client["coll"]
while True:
cursor = db.mycol.find()
for document in cursor:
print(document['num'])
time.sleep(2)
MMTTMM
相关分类