In pymongo puoi aggiornare con:mycollection.update({'_id':mongo_id}, {"$set": post}, upsert=False)
Il parametro Upsert verrà inserito invece di essere aggiornato se il post non viene trovato nel database.
La documentazione è disponibile sul sito mongodb.
AGGIORNAMENTO Per la versione> 3 usa update_one invece di aggiornamento :
mycollection.update_one({'_id':mongo_id}, {"$set": post}, upsert=False)