Question

J'ai un site Web sur lequel je souhaite rester à jour et en extraire du contenu tous les jours. Je sais que le site est mis à jour manuellement à un moment donné, et j’ai programmé les plannings cron en conséquence, mais comme il est mis à jour manuellement, le délai pourrait être de 10 à 20 minutes.

À l’heure actuelle, j’ai une mise à jour rapide toutes les 5 minutes, mais j’aimerais 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 pour pouvoir vérifier s'il y a eu une mise à jour et reporter la même mise à jour pendant quelques minutes s'il n'y en a pas, et la reporter à nouveau au besoin jusqu'à ce qu'il y ait enfin une mise à jour.

J'ai du code qui, à mon avis, pourrait fonctionner, mais il ne diffère qu'une seule fois, alors que je dois continuer à différer jusqu'à la mise à jour:

(J'utilise Python)

class Ripper(object):
    def rip(self):
        if siteHasNotBeenUpdated:
            deferred.defer(self.rip, _countdown=120)
        else:
            updateMySite()

C’était évidemment un extrait simplifié.
Je pensais que c'était assez simple pour fonctionner, mais peut-être que je viens de me tromper?

Était-ce utile?

La solution

L'exemple que vous donnez devrait bien fonctionner. Vous devez ajouter une journalisation pour déterminer si deferred.defer est appelé alors que vous le pensez. De plus amples informations vous aideraient également: comment est défini siteHasNotBeenUpdated?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top