Пример #1
0
    def _make_file(self, name, filename, mimetype, body, default_language):
        from webpage import WebPage

        if type(name) is not str:
            raise TypeError, 'expected string, got %s' % repr(name)

        # Web Pages are first class citizens
        if mimetype == 'text/html':
            body = tidy_html(body)
            class_id = 'webpage'
        elif mimetype == 'application/xhtml+xml':
            class_id = 'webpage'
        else:
            class_id = mimetype
        cls = self.database.get_resource_class(class_id)

        # Special case: web pages
        kw = {'filename': filename, 'data': body}
        if issubclass(cls, WebPage):
            kk, kk, language = FileName.decode(filename)
            if language is None:
                text = XHTMLFile(string=body).to_text()
                language = guess_language(text) or default_language
            kw['data'] = {language: body}

        return self.make_resource(name, cls, **kw)
Пример #2
0
    def _make_file(self, name, filename, mimetype, body, default_language):
        from webpage import WebPage

        if type(name) is not str:
            raise TypeError, 'expected string, got %s' % repr(name)

        # Web Pages are first class citizens
        if mimetype == 'text/html':
            body = tidy_html(body)
            class_id = 'webpage'
        elif mimetype == 'application/xhtml+xml':
            class_id = 'webpage'
        else:
            class_id = mimetype
        cls = self.database.get_resource_class(class_id)

        # Special case: web pages
        kw = {'filename': filename, 'data': body}
        if issubclass(cls, WebPage):
            kk, kk, language = FileName.decode(filename)
            if language is None:
                text = XHTMLFile(string=body).to_text()
                language = guess_language(text) or default_language
            kw['data'] = {language: body}

        return self.make_resource(name, cls, **kw)
Пример #3
0
 def test_french_long(self):
     text = u"""Le piège de la guerre coloniale se referme sur les
     envahisseurs de lIrak. Comme les troupes françaises embourbées jadis
     en Algérie, les Britanniques au Kenya, les Belges au Congo et les
     Portugais en Guinée-Bissau (voire aujourdhui les Israéliens à Gaza),
     les forces
     américaines constatent que leur écrasante supériorité ne suffit pas à
     leur épargner enlèvements, embuscades et autres attentats mortels Pour
     les soldats sur le terrain, loccupation de lIrak se transforme en une
     descente aux enfers."""
     self.assertEqual(guess_language(text), "fr")
Пример #4
0
 def test_french_long(self):
     text = u"""Le piège de la guerre coloniale se referme sur les
     envahisseurs de lIrak. Comme les troupes françaises embourbées jadis
     en Algérie, les Britanniques au Kenya, les Belges au Congo et les
     Portugais en Guinée-Bissau (voire aujourdhui les Israéliens à Gaza),
     les forces
     américaines constatent que leur écrasante supériorité ne suffit pas à
     leur épargner enlèvements, embuscades et autres attentats mortels Pour
     les soldats sur le terrain, loccupation de lIrak se transforme en une
     descente aux enfers."""
     self.assertEqual(guess_language(text), 'fr')
Пример #5
0
 def test_english_long(self):
     text = """INDIA SOFTWARE REVENUE UP: India's revenue from exports of
     software and back-office services grew more than 30 percent during the
     fiscal year ended in March despite a backlash in the United States
     against outsourcing, a trade group said.
     .
     Those revenues rose to $12.5 billion in the latest fiscal year from
     $9.6 billion a year earlier, said Kiran Karnik, president of the
     National Association of Software and Service Companies.
     .
     U.S. companies account for 70 percent of the revenue. Karnik forecast
     growth of 30 percent to 32 percent in the current"""
     self.assertEqual(guess_language(text), "en")
Пример #6
0
 def test_english_long(self):
     text = """INDIA SOFTWARE REVENUE UP: India's revenue from exports of
     software and back-office services grew more than 30 percent during the
     fiscal year ended in March despite a backlash in the United States
     against outsourcing, a trade group said.
     .
     Those revenues rose to $12.5 billion in the latest fiscal year from
     $9.6 billion a year earlier, said Kiran Karnik, president of the
     National Association of Software and Service Companies.
     .
     U.S. companies account for 70 percent of the revenue. Karnik forecast
     growth of 30 percent to 32 percent in the current"""
     self.assertEqual(guess_language(text), 'en')
Пример #7
0
    def test_spain_long(self):
        text = u"""Nueva coordinadora de Humanidades. En sustitución de la
        doctora Olga Hansberg, el pasado martes 17 tomó posesión como
        coordinadora de Humanidades de la UNAM la doctora Mari Carmen Serra
        Puche. Con la doctora Serra se inicia un nuevo ciclo del cual se espera
        que las ciencias sociales y las humanidades sean lo que deben ser: la
        inteligencia y el alma de la UNAM.

        En la ceremonia de toma de posesión de la doctora Serra estuvo presente
        el rector Juan Ramón de la Fuente, quien sostuvo que la máxima casa de
        estudios está preparada para enfrentar los nuevos retos que deberá
        enfrentar la institución en la perspectiva de la reforma. La comunidad
        académica tiene plena confianza en que la nueva coordinadora será punto
        de equilibrio y unión para que se produzcan una serie de cambios en
        este subsistema universitario. Por lo pronto y para que no digan que
        no se reconoce hay que decir que las autoridades ya anunciaron que el
        Centro de Estudios sobre la Universidad (CESU) y el Instituto de
        Investigaciones Económicas tendrán nuevas instalaciones, decisión que
        está más que justificada y, repito, se agradece."""
        self.assertEqual(guess_language(text), 'es')
Пример #8
0
    def test_spain_long(self):
        text = u"""Nueva coordinadora de Humanidades. En sustitución de la
        doctora Olga Hansberg, el pasado martes 17 tomó posesión como
        coordinadora de Humanidades de la UNAM la doctora Mari Carmen Serra
        Puche. Con la doctora Serra se inicia un nuevo ciclo del cual se espera
        que las ciencias sociales y las humanidades sean lo que deben ser: la
        inteligencia y el alma de la UNAM.

        En la ceremonia de toma de posesión de la doctora Serra estuvo presente
        el rector Juan Ramón de la Fuente, quien sostuvo que la máxima casa de
        estudios está preparada para enfrentar los nuevos retos que deberá
        enfrentar la institución en la perspectiva de la reforma. La comunidad
        académica tiene plena confianza en que la nueva coordinadora será punto
        de equilibrio y unión para que se produzcan una serie de cambios en
        este subsistema universitario. Por lo pronto y para que no digan que
        no se reconoce hay que decir que las autoridades ya anunciaron que el
        Centro de Estudios sobre la Universidad (CESU) y el Instituto de
        Investigaciones Económicas tendrán nuevas instalaciones, decisión que
        está más que justificada y, repito, se agradece."""
        self.assertEqual(guess_language(text), "es")
Пример #9
0
 def test_spain_short(self):
     text = u"""Nueva coordinadora de Humanidades. En sustitución de la
     doctora Olga Hansberg, el pasado martes 17 tomó posesión como
     coordinadora de Humanidades de la UNAM la doctora Mari Carmen Serra
     Puche."""
     self.assertEqual(guess_language(text), "es")
Пример #10
0
 def test_spain_very_sort(self):
     text = """Nueva coordinadora de Humanidades."""
     self.assertEqual(guess_language(text), 'es')
Пример #11
0
 def test_english_very_sort(self):
     text = """But from a cloudless blue sky"""
     self.assertEqual(guess_language(text), "en")
Пример #12
0
 def test_english_short(self):
     text = """The French, too, paid much attention to French-German
     reconciliation and interpreted the ceremonies as a celebration of
     European integration and peace."""
     self.assertEqual(guess_language(text), "en")
Пример #13
0
 def test_french_short(self):
     text = u"""un dossier spécial consacré à la « révolution de velours »
     géorgienne sur le site de lagence Radio Free Europe fondée par le
     Congrès des Etats-Unis."""
     self.assertEqual(guess_language(text), 'fr')
Пример #14
0
 def test_french_very_sort(self):
     text = u"""Les déclarations du président Vladimir Poutine"""
     self.assertEqual(guess_language(text), "fr")
Пример #15
0
 def test_french_short(self):
     text = u"""un dossier spécial consacré à la « révolution de velours »
     géorgienne sur le site de lagence Radio Free Europe fondée par le
     Congrès des Etats-Unis."""
     self.assertEqual(guess_language(text), "fr")
Пример #16
0
 def test_french_very_sort(self):
     text = u"""Les déclarations du président Vladimir Poutine"""
     self.assertEqual(guess_language(text), 'fr')
Пример #17
0
 def test_spain_very_sort(self):
     text = """Nueva coordinadora de Humanidades."""
     self.assertEqual(guess_language(text), "es")
Пример #18
0
 def test_spain_short(self):
     text = u"""Nueva coordinadora de Humanidades. En sustitución de la
     doctora Olga Hansberg, el pasado martes 17 tomó posesión como
     coordinadora de Humanidades de la UNAM la doctora Mari Carmen Serra
     Puche."""
     self.assertEqual(guess_language(text), 'es')
Пример #19
0
 def test_english_very_sort(self):
     text = """But from a cloudless blue sky"""
     self.assertEqual(guess_language(text), 'en')
Пример #20
0
 def test_english_short(self):
     text = """The French, too, paid much attention to French-German
     reconciliation and interpreted the ceremonies as a celebration of
     European integration and peace."""
     self.assertEqual(guess_language(text), 'en')