문제

나는 매일 최신 정보를 유지하고 거기에서 일부 콘텐츠를 스크랩하려는 웹 사이트를 가지고 있습니다.사이트가 특정 시간에 수동으로 업데이트된다는 것을 알고 있으며 이를 반영하기 위해 cron 일정을 설정했지만 수동으로 업데이트되므로 10분 또는 20분 후에 업데이트될 수 있습니다.

지금은 5분마다 해킹 크론 업데이트를 하고 있지만, 지연된 라이브러리를 사용하여 보다 정확한 방식으로 작업을 수행하고 싶습니다.업데이트가 있는지 확인하고 업데이트가 없으면 몇 분 동안 동일한 업데이트를 연기하고, 최종 업데이트가 있을 때까지 필요할 경우 다시 연기할 수 있도록 지연된 작업을 연결하려고 합니다.

작동할 것이라고 생각한 일부 코드가 있지만 한 번만 연기되고 대신 업데이트가 있을 때까지 계속 연기해야 ​​합니다.

(저는 파이썬을 사용하고 있습니다)

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

이것은 분명히 단순화된 발췌일 뿐입니다.
나는 이것이 작동하기에 충분히 간단하다고 생각했지만 아마도 내가 모든 것을 잘못 알고 있는 것일까요?

도움이 되었습니까?

해결책

당신이 제시한 예는 잘 작동할 것입니다.deferred.defer가 호출된다고 생각될 때 호출되는지 확인하려면 로깅을 추가해야 합니다.더 많은 정보도 도움이 될 것입니다.siteHasNotBeenUpdated는 어떻게 설정되나요?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top