def get(self):
     """
     Handler for the cronjob: /cron/indexing
     It store keywords indexing of the most recent WebResource stored
     :return:
     """
     # create the Index entries
     from flankers.long_task import storeIndexer
     an_hour = datetime.datetime.now() - datetime.timedelta(hours=1)
     print an_hour
     query = WebResource.query().filter(WebResource.stored > an_hour)
     print query.count()
     for q in query:
         s = storeIndexer()
         s.execute_task(q, q.key)
         del s
示例#2
0
 def get(self):
     """
     Handler for the cronjob: /cron/indexing
     It store keywords indexing of the most recent WebResource stored
     :return:
     """
     # create the Index entries
     from flankers.long_task import storeIndexer
     an_hour = datetime.datetime.now() - datetime.timedelta(hours=1)
     print an_hour
     query = WebResource.query().filter(WebResource.stored > an_hour)
     print query.count()
     for q in query:
         s = storeIndexer()
         s.execute_task(q, q.key)
         del s
    def get(self):
        """
        Handler for the cronjob: /cron/indexing
        It store keywords indexing of the most recent WebResource stored
        :return:
        """
        # create the Index entries
        from flankers.long_task import storeIndexer

        if not memcache.get(key=self.mkey):
            an_hour = datetime.datetime(*localtime()[:6]) - datetime.timedelta(hours=2)
            print an_hour
            query = WebResource.query().filter(WebResource.stored > an_hour)
            if query.count() == 0:
                memcache.delete(key=self.mkey)
                return None
            print "queried: " + str(query.count())

            listed = []
            for k in query.iter(keys_only=True):
                listed.append(k)

            memcache.add(key=self.mkey, value=listed)
            to_index = listed
        else:
            to_index = memcache.get(key=self.mkey)

        print "To be indexed: " + str(len(to_index))

        if len(to_index) != 0:
            key = to_index.pop()
            print "popped", str(len(to_index))
            print "popping", str(key)

            try:
                s = storeIndexer()
                s.execute_task(key.get(), key)
                del s
            except Exception:
                print "resource already indexed"
                pass

            memcache.set(key=self.mkey, value=to_index)
        else:
            memcache.delete(key=self.mkey)
            print "nothing to index"