Exemplo n.º 1
0
 def GET(self):
     
     result = {}
     service_parameter = web.input(service = None)['service']
     question_id_parameter = web.input(question_id = None)['question_id']
     sort_parameter = web.input(sort = 'week')['sort']
     pagesize_parameter = web.input(pagesize = 30)['pagesize']
     try:
         if service_parameter:
             se_downloader = StackExchangeDownloader(service_parameter)
             if question_id_parameter:
                 se_downloader.get_post(question_id_parameter, False)
             else:
                 questions = se_downloader.get_questions_by_hotness(pagesize = pagesize_parameter, 
                                                                    sort = sort_parameter)
                 for question in questions:
                     question_id = int(question['question_id'])
                     score = int(question['score'])
                     if score > VOTES_ENTRY_LEVEL:
                         taskqueue.add(url='/admin/topquestionsretriever?service=%s&question_id=%s&sort=%s' % \
                                       (service_parameter, question_id, sort_parameter) , 
                                       method = 'GET', 
                                       queue_name = 'retriever')
         else:
             supported_services = StackAuthDownloader.get_supported_services()
             for service in supported_services.keys:
                 if not service.startswith('meta.'):
                     taskqueue.add(url='/admin/topquestionsretriever?service=%s&sort=%s' % \
                                   (service, sort_parameter), 
                                   method = 'GET', 
                                   queue_name = 'retriever')
     except Exception:
         logging.exception("Exception handling TopQuestionRetriever")
     result['result'] = True
     return render.admin(result)
Exemplo n.º 2
0
 def GET(self):
     
     result = {}
     service_parameter = web.input(service = None)['service']
     question_id_parameter = web.input(question_id = None)['question_id']
     sort_parameter = web.input(sort = 'week')['sort']
     pagesize_parameter = web.input(pagesize = 30)['pagesize']
     try:
         if service_parameter:
             se_downloader = StackExchangeDownloader(service_parameter)
             if question_id_parameter:
                 se_downloader.get_post(question_id_parameter, False)
             else:
                 questions = se_downloader.get_questions_by_hotness(pagesize = pagesize_parameter, 
                                                                    sort = sort_parameter)
                 for question in questions:
                     question_id = int(question['question_id'])
                     score = int(question['score'])
                     if score > VOTES_ENTRY_LEVEL:
                         taskqueue.add(url='/admin/topquestionsretriever?service=%s&question_id=%s&sort=%s' % \
                                       (service_parameter, question_id, sort_parameter) , 
                                       method = 'GET', 
                                       queue_name = 'retriever')
         else:
             supported_services = StackAuthDownloader.get_supported_services()
             for service in supported_services.keys:
                 if not service.startswith('meta.'):
                     taskqueue.add(url='/admin/topquestionsretriever?service=%s&sort=%s' % \
                                   (service, sort_parameter), 
                                   method = 'GET', 
                                   queue_name = 'retriever')
     except Exception:
         logging.exception("Exception handling TopQuestionRetriever")
     result['result'] = True
     return render.admin(result)