コード例 #1
0
ファイル: felow.py プロジェクト: lux-sol/felow
    def format_text(self, text, document, formatting):
        par_len = 150

        applicator = Applicator()
        cleaner = Cleaner()
        formatter = Formatter()
        new_text = self.get_string(text)

        cleaner.create_sentc_list(new_text)
        sentc_list = cleaner.get_sentc_list()
        formatter.set_sentlist(sentc_list)

        if formatting == "list":
            formatter.frmt_textlist()

        elif formatting == "block":
            formatter.frmt_textblock(par_len=par_len)

        elif formatting == "string":
            formatter.frmt_textstring()

        else:
            print("format not supported")
            raise SystemExit

        format_text = formatter.get_text()
        applicator.apply_text(format_text, document=document)
コード例 #2
0
ファイル: felow.py プロジェクト: lux-sol/felow
    def generate_text(self, weights, vocab, config, num, lines, temp,
                      document):
        applicator = Applicator()
        formatter = Formatter()
        generator = Generator()

        generator.set_weights(weights, vocab, config)
        generator.gen_text(num, lines, temp)
        gen_list = generator.get_text_list()

        formatter.set_sentlist(gen_list)
        formatter.frmt_textlist()
        format_text = formatter.get_text()
        applicator.apply_text(format_text, document)
コード例 #3
0
ファイル: felow.py プロジェクト: lux-sol/felow
    def clean_text(self, text, document, sentmin, sentmax, dictionary, cycle):
        print("applicator selected")
        applicator = Applicator()
        cleaner = Cleaner()
        formatter = Formatter()
        new_text = self.get_string(text)

        cycle_list = [
            "noalpha", "nodeclare", "excaps", "exletters", "firstperson",
            "secondperson", "dupwords", "duplicates", "trimsentlist",
            "checkspelling", "help (or h)"
        ]

        def return_cycles():
            s = ", "
            s = s.join(cycle_list)
            return s

        cleaner.create_sentc_list(new_text)
        if cycle == "full":
            cleaner.remv_noalpha()
            cleaner.remv_nodeclare()
            cleaner.remv_excaps()
            cleaner.remv_exletters()
            cleaner.remv_firstperson()
            cleaner.remv_secondperson()
            cleaner.remv_dupwords()
            cleaner.remv_duplicates()
            cleaner.trim_sentlist(sentmin, sentmax)
            cleaner.check_misspelled(dictionary)

        elif cycle == "noalpha":
            cleaner.remv_noalpha()

        elif cycle == "nodeclare":
            cleaner.remv_nodeclare()

        elif cycle == "excaps":
            cleaner.remv_excaps()

        elif cycle == "exletters":
            cleaner.remv_exletters()

        elif cycle == "firstperson":
            cleaner.remv_firstperson()

        elif cycle == "secondperson":
            cleaner.remv_secondperson()

        elif cycle == "dupwords":
            cleaner.remv_dupwords()

        elif cycle == "duplicates":
            cleaner.remv_duplicates()

        elif cycle == "trimsentlist":
            cleaner.trim_sentlist(sentmin, sentmax)

        elif cycle == "checkspelling":
            cleaner.check_misspelled(dictionary)

        else:
            print("cycle not found")
            print("available cycles:")
            print(return_cycles())
            raise SystemExit

        sentc_list = cleaner.get_sentc_list()
        formatter.set_sentlist(sentc_list)
        formatter.frmt_textlist()
        clean_text = formatter.get_text()
        applicator.apply_text(text=clean_text, document=document)