コード例 #1
0
def save_user_word(group_id, word):
    """
    Save user's words in DB
    :param group_id: group id
    :param word: target word
    """
    group = Group.objects.filter(id=group_id)[0]
    store_data = SpamWordList(word=word, group=group, status='user')
    store_data.save()
コード例 #2
0
ファイル: spam_app.py プロジェクト: cbajs12/ward
def save_user_word(group_id, word):
    """
    Save user's words in DB
    :param group_id: group id
    :param word: target word
    """
    group = Group.objects.filter(id=group_id)[0]
    store_data = SpamWordList(word=word, group=group, status='user')
    store_data.save()
コード例 #3
0
def init_db(group):
    """
    save standard word from spam.txt to database when initialize database
    :param group: group object
    """
    data_set = [line.strip() for line in open("analysis/texts/spam.txt", 'r')]
    words = SpamWordList.objects.filter(group=group)

    for i in data_set:
        if i in words:
            continue

        store_data = SpamWordList(word=i, group=group, status='filter')
        store_data.save()
コード例 #4
0
ファイル: spam_app.py プロジェクト: cbajs12/ward
def init_db(group):
    """
    save standard word from spam.txt to database when initialize database
    :param group: group object
    """
    data_set = [line.strip() for line in open("analysis/texts/spam.txt", 'r')]
    words = SpamWordList.objects.filter(group=group)

    for i in data_set:
        if i in words:
            continue

        store_data = SpamWordList(word=i, group=group, status='filter')
        store_data.save()
コード例 #5
0
def update_words_level(group):
    """
    change temp and deleted status of words which are greater than critical point to filter status
    :param group: group object
    """
    words_db = SpamWordList.objects.filter(group=group,
                                           status='temp',
                                           count__gte=10)
    for i in words_db:
        word = SpamWordList(group=group, word=i.word)
        word.status = 'filter'
        word.save()

    words = SpamWordList.objects.filter(group=group,
                                        status='deleted',
                                        count__gte=30)
    if words is not None:
        for i in words:
            word = SpamWordList(group=group, word=i.word)
            word.status = 'filter'
            word.save()
コード例 #6
0
ファイル: spam_app.py プロジェクト: cbajs12/ward
def update_words_level(group):
    """
    change temp and deleted status of words which are greater than critical point to filter status
    :param group: group object
    """
    words_db = SpamWordList.objects.filter(group=group, status='temp', count__gte=10)
    for i in words_db:
        word = SpamWordList(group=group, word=i.word)
        word.status = 'filter'
        word.save()

    words = SpamWordList.objects.filter(group=group, status='deleted', count__gte=30)
    if words is not None:
        for i in words:
            word = SpamWordList(group=group, word=i.word)
            word.status = 'filter'
            word.save()
コード例 #7
0
def add_spam_words(group, words):
    """
    add words in DB
    :param group: group object
    :param words: spam words list
    """
    words_db = SpamWordList.objects.filter(group=group)

    wordlist = []

    for i in words_db:
        wordlist.append(i.word)

    for i in words:
        if i in wordlist:
            aword = SpamWordList.objects.filter(group=group, word=i)[0]
            aword.count += 1
            aword.save()
        else:
            SpamWordList(group=group, word=i).save()