Пример #1
0
 def get(self, page):
     page = int(page) if page else 0
     
     helper = RequestHelper(self)
     results = []
     for u in UrlResource.all().fetch(self.BATCH_SIZE, page * self.BATCH_SIZE):
         results.append(resource_hash(u))
     helper.write_json(results)
Пример #2
0
    def __search(self, helper):
        q = self.request.get("q")
        if not q:
            helper.error(400, "q must be provided")
            return

        regex = re.compile(q)
        return UrlResource.search_by_url(regex)
Пример #3
0
 def get_or_create(cls, url, **kw):
     u = cls.get_by_url(url, return_none=True)
     if not u:
         # returns key
         u_key = cls.create(url, **kw)
         # looks up url for key
         u = UrlResource.get(u_key)
     return u
Пример #4
0
 def get_or_create(cls, url, **kw):
     u = cls.get_by_url(url, return_none=True)
     if not u:
         # returns key
         u_key = cls.create(url, **kw)
         # looks up url for key
         u = UrlResource.get(u_key)
     return u
Пример #5
0
 def random_resource(self, max_length=130):
     resource = None
     q = UrlResource.find_latest()
     if not q.count():
         raise MissingDataException("no results found")
         
     for resource in random_query_results(q, 10):
         if len(resource.url) < max_length:
             break
     if not resource: raise MissingDataException("no sufficient resources found")
     return resource
Пример #6
0
    def random_resource(self, max_length=130):
        resource = None
        q = UrlResource.find_latest()
        if not q.count():
            raise MissingDataException("no results found")

        for resource in random_query_results(q, 10):
            if len(resource.url) < max_length:
                break
        if not resource:
            raise MissingDataException("no sufficient resources found")
        return resource
Пример #7
0
    def get(self, url):
        helper = RequestHelper(self)
        resource = UrlResource.get_by_url(url, return_none=True)
        if not resource:
            helper.error(404)
            return
        helper.write_json(resource_hash(resource))


# application = webapp.WSGIApplication([
#     ('/api/resources/-/search', ResourcesSearchHandler),
#     ('/api/resources/?(\d+)?', ResourcesHandler),
#     ('/api/resources/(.+)', ResourceHandler)
#     ])
# 
# 
# def main():
#   log.config()
#   run_wsgi_app(application)
# 
# if __name__ == "__main__":
#   main()
Пример #8
0
 def search_by_url(cls, term, **kw):
     return [u for u in UrlResource.search_by_url_regex(term)]
Пример #9
0
 def create(cls, url, **kw):
     return UrlResource.create(url, **kw)
Пример #10
0
 def get_by_url(cls, url, **kw):
     return UrlResource.get_by_url(url, **kw)
Пример #11
0
 def search_by_url(cls, term, **kw):
     return [u for u in UrlResource.search_by_url_regex(term)]
Пример #12
0
 def create(cls, url, **kw):
     return UrlResource.create(url, **kw)
Пример #13
0
 def get_by_url(cls, url, **kw):
     return UrlResource.get_by_url(url, **kw)