J'ai un site Web que je cherche à garder à jour avec et gratter du contenu à partir de là tous les jours. Je sais que le site est mis à jour manuellement à un certain moment, et j'ai fixé des horaires cron pour le refléter, mais comme il est mis à jour manuellement, il pourrait être 10 ou même 20 minutes plus tard.Chaînage des tâches différées avec Google App Engine
À l'heure actuelle, j'ai une mise à jour cron hack-ish toutes les 5 minutes, mais je voudrais utiliser la bibliothèque différée pour faire les choses de manière plus précise. J'essaie d'enchaîner les tâches différées afin que je puisse vérifier s'il y a eu une mise à jour et différer la même mise à jour pendant quelques minutes s'il n'y en avait pas, et reporter à nouveau si nécessaire jusqu'à ce qu'il y ait une mise à jour.
J'ai un code Je pensais que cela fonctionnerait, mais il ne sursoit jamais une fois, quand au lieu je dois continuer de différer jusqu'à une mise à jour:
(J'utilise Python)
class Ripper(object):
def rip(self):
if siteHasNotBeenUpdated:
deferred.defer(self.rip, _countdown=120)
else:
updateMySite()
C'était juste un extrait simplifié évidemment.
Je pensais que c'était assez simple pour travailler, mais peut-être que j'ai tout faux?