コード例 #1
0
def get_weight(tag1, tag2, method=WeightFuncs.inter_divide_union):
    tag1_q = QuestionsCDN.get_tag_questions(tag1)
    tag2_q = QuestionsCDN.get_tag_questions(tag2)
    n1 = len(tag1_q)
    n2 = len(tag2_q)
    nu = len(tag1_q | tag2_q)
    weight1 = method(n1, n2, nu)
    weight2 = WeightFuncs.inter_divide_min(n1, n2, nu)
    return [n1, n1 + n2 - nu, nu, weight1, weight2]
コード例 #2
0
 def get_questions(self, tag):
     questions = self.tag_questions.setdefault(tag, set())
     if len(questions) < self.min_question_num:
         result_qs = QuestionsCDN.get_tag_questions(
             tag,
             save=self.from_db,
             min_num=self.min_question_num,
             from_db=self.from_db,
             from_api=self.from_api,
             from_cache=self.from_cache)
         self.tag_questions[tag] |= result_qs
     return self.tag_questions[tag]
コード例 #3
0
from data.cdn.sof_cdn import QuestionsCDN, TagsCDN

if __name__ == '__main__':
    for i, tag in enumerate(TagsCDN.get_tags(10000)):
        print(f'count {i}')
        QuestionsCDN.get_tag_questions(tag, save=False, from_db=False, min_num=100)
    # QuestionsCDN.get_tag_questions('map', save=False, from_db=False, min_num=100)
コード例 #4
0
from data.cdn.sof_cdn import QuestionsCDN

if __name__ == '__main__':
    QuestionsCDN.cache.add_tag_questions(
        'reactjs', QuestionsCDN.get_tag_questions("{'reactjs'}"))
    QuestionsCDN.cache.add_tag_questions(
        'jquery', QuestionsCDN.get_tag_questions("{'jquery'}"))
    QuestionsCDN.cache.add_tag_questions(
        'react-redux', QuestionsCDN.get_tag_questions("{'react-redux'}"))
    QuestionsCDN.cache.add_tag_questions(
        'node.js', QuestionsCDN.get_tag_questions("{'node.js'}"))
    QuestionsCDN.cache.hdel("{'reactjs'}")
    QuestionsCDN.cache.hdel("{'jquery'}")
    QuestionsCDN.cache.hdel("{'react-redux'}")
    QuestionsCDN.cache.hdel("{'node.js'}")