def handle_noargs(self, **options): if site_too_old(): return from localtv.tasks import update_sources, CELERY_USING update_sources.delay(using=CELERY_USING)
def handle_noargs(self, **options): if site_too_old(): return from localtv.tasks import update_sources update_sources.delay()
def handle_noargs(self, **options): if site_too_old(): return from localtv import tasks tasks.update_sources.delay(using=tasks.CELERY_USING)
def handle_noargs(self, **options): if site_too_old(): return for saved_search in models.SavedSearch.objects.all(): try: saved_search.update_items() except: traceback.print_exc()
def handle_noargs(self, **options): if site_too_old(): return from localtv import tasks tasks.update_sources.delay( using=tasks.CELERY_USING)
def handle_noargs(self, **options): if site_too_old(): return for feed in models.Feed.objects.filter( status=models.FEED_STATUS_ACTIVE): try: feed.update_items() except: traceback.print_exc()
def handle_noargs(self, **options): if site_too_old(): return for original in OriginalVideo.objects.exclude( video__status=Video.REJECTED): try: original.update() except vidscraper.errors.CantIdentifyUrl: pass # It is okay if we cannot update a remote video. No need to be noisy. except Exception: traceback.print_exc()
def handle_noargs(self, **options): if site_too_old(): return for original in OriginalVideo.objects.exclude( video__status=Video.REJECTED): try: original.update() except vidscraper.errors.CantIdentifyUrl, e: pass # It is okay if we cannot update a remote video. No need to be noisy. except Exception: traceback.print_exc()
def handle(self, **options): if site_too_old(): return since = options['since'] from localtv.tasks import haystack_batch_update haystack_batch_update.delay(Video._meta.app_label, Video._meta.module_name, start=datetime.now() - timedelta(since), date_lookup='watch__timestamp')
def handle_noargs(self, **options): if site_too_old(): return for v in models.Video.objects.filter(when_published__isnull=True): try: d = vidscraper.auto_scrape(v.website_url, fields=["publish_date"]) except: pass else: if d: v.when_published = d["publish_date"] v.save()
def handle_noargs(self, verbosity=0, **options): if site_too_old(): return for v in models.Video.objects.exclude(thumbnail_url=''): if (not v.thumbnail or not default_storage.exists(v.thumbnail.name)): if verbosity >= 1: print >> sys.stderr, 'saving', repr(v), '(%i)' % v.pk try: # resave the thumbnail video_save_thumbnail.apply(args=(v.pk,)) except Exception: traceback.print_exc()
def handle_noargs(self, **options): if site_too_old(): return for v in models.Video.objects.filter(when_published__isnull=True): try: d = vidscraper.auto_scrape(v.website_url, fields=['publish_date']) except: pass else: if d: v.when_published = d['publish_date'] v.save()
def handle_noargs(self, **options): if site_too_old(): return for v in models.Video.objects.filter(when_published__isnull=True): try: video = vidscraper.auto_scrape(v.website_url, fields=[ 'publish_datetime'], api_keys=API_KEYS) except: pass else: if video: v.when_published = video.publish_datetime v.save()
def handle_noargs(self, **options): if site_too_old(): return for v in models.Video.objects.filter(when_published__isnull=True): try: video = vidscraper.auto_scrape(v.website_url, fields=['publish_datetime'], api_keys=API_KEYS) except: pass else: if video: v.when_published = video.publish_datetime v.save()
def handle_noargs(self, verbosity=0, **options): if site_too_old(): return has_thumbnail = Q(has_thumbnail=True) has_thumbnail_url = ~Q(thumbnail_url="") for v in models.Video.objects.filter(has_thumbnail | has_thumbnail_url): path = v.get_original_thumb_storage_path() if not default_storage.exists(path): if verbosity >= 1: print "saving", v, "(%i)" % v.pk try: # resave the thumbnail v.save_thumbnail() except Exception: traceback.print_exc()
def handle_noargs(self, verbosity=0, **options): if site_too_old(): return has_thumbnail = Q(has_thumbnail=True) has_thumbnail_url = ~Q(thumbnail_url='') for v in models.Video.objects.filter(has_thumbnail | has_thumbnail_url): path = v.get_original_thumb_storage_path() if not default_storage.exists(path): if verbosity >= 1: print 'saving', v, '(%i)' % v.pk try: # resave the thumbnail v.save_thumbnail() except Exception: traceback.print_exc()
def handle_noargs(self, **options): if site_too_old(): return for v in models.Video.objects.filter(when_published__isnull=True): try: d = vidscraper.auto_scrape(v.website_url, fields=['publish_date']) except: pass else: if d: v.when_published = d['publish_date'] v.save() # Finally, at the end, if stamps are enabled, update them. if models.ENABLE_CHANGE_STAMPS: models.create_or_delete_video_needs_published_date_stamp()
def handle_noargs(self, **options): if site_too_old(): return # all feeds submitted more than an hour ago should be shown hour = datetime.timedelta(hours=1) models.Feed.objects.filter( when_submitted__lte=datetime.datetime.now() - hour, status=models.FEED_STATUS_UNAPPROVED).update( status=models.FEED_STATUS_ACTIVE) for feed in models.Feed.objects.filter( status=models.FEED_STATUS_ACTIVE): try: feed.update_items() except: traceback.print_exc()
def handle_noargs(self, **options): if site_too_old(): return for v in models.Video.objects.filter(when_published__isnull=True): try: video = vidscraper.auto_scrape(v.website_url, fields=[ 'publish_datetime'], api_keys=API_KEYS) except: pass else: if video: v.when_published = video.publish_datetime v.save() # Finally, at the end, if stamps are enabled, update them. if ENABLE_CHANGE_STAMPS: models.create_or_delete_video_needs_published_date_stamp()
def handle_noargs(self, **options): if site_too_old(): return # all feeds submitted more than an hour ago should be shown hour = datetime.timedelta(hours=1) models.Feed.objects.filter( when_submitted__lte=datetime.datetime.now()-hour, status=models.FEED_STATUS_UNAPPROVED).update( status=models.FEED_STATUS_ACTIVE) for feed in models.Feed.objects.filter( status=models.FEED_STATUS_ACTIVE): try: feed.update_items() except: traceback.print_exc()
def handle_noargs(self, **options): if site_too_old(): return # all feeds submitted more than an hour ago should be shown hour = datetime.timedelta(hours=1) models.Feed.objects.filter( when_submitted__lte=datetime.datetime.now()-hour, status=models.FEED_STATUS_UNAPPROVED).update( status=models.FEED_STATUS_ACTIVE) green_pile = eventlet.GreenPile() for feed in models.Feed.objects.filter( status=models.FEED_STATUS_ACTIVE): for url in feed._get_feed_urls(): green_pile.spawn(fetch_feed, feed) for feed, etag, data in green_pile: if feed: feed_update_items(feed, etag, data)
def handle_noargs(self, **options): if site_too_old(): return # all feeds submitted more than an hour ago should be shown hour = datetime.timedelta(hours=1) models.Feed.objects.filter( when_submitted__lte=datetime.datetime.now() - hour, status=models.FEED_STATUS_UNAPPROVED).update( status=models.FEED_STATUS_ACTIVE) green_pile = eventlet.GreenPile() for feed in models.Feed.objects.filter( status=models.FEED_STATUS_ACTIVE): for url in feed._get_feed_urls(): green_pile.spawn(fetch_feed, feed) for feed, etag, data in green_pile: if feed: feed_update_items(feed, etag, data)
def handle_noargs(self, **options): if site_too_old(): return newsletter = models.NewsletterSettings.objects.get_current() if not newsletter.repeat: return if not newsletter.site_settings.get_tier().permit_newsletter(): return now = datetime.datetime.now() if now > newsletter.next_send_time(): logging.warning('Sending newsletter for %s', newsletter.site_settings.site.domain) newsletter.send() # we increment by the repeat so that last_sent maintains the # weekday and hour that the user has assigned repeat = datetime.timedelta(hours=newsletter.repeat) while newsletter.next_send_time() < now: newsletter.last_sent += repeat newsletter.save() logging.warning('Next send scheduled for %s', newsletter.next_send_time())