当我使用后端为Mongo DB的celery执行任务时,它将结果以BinData(0,"gAJLEy4=")
的形式存储在数据库中。
我们如何从Mongo DB读取这个'结果'数据并将其解码为字符串?
我想写一个新的python脚本,它从Mongo db中读取所有结果。
芹菜结果模块或pymongo中是否有可用于处理此结果的直接API?
在我的情况下,结果将是网页的HTML源(即已爬网数据)
答案 0 :(得分:2)
得到了答案。默认情况下,Celery将结果存储为数据存储中的pickle对象。 我们可以通过调用函数pickle.loads
来检索这个值import pickle
# Connect db
# Fetch record from the collection
str_result = pickle.loads(c['result'])