Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: atualiza versão do Apache Tika em uso. #74

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jvanz
Copy link
Member

@jvanz jvanz commented Mar 21, 2024

Quando tentado rodar o Apache Tika versão 1.9.4 atualmente em uso no container para rodar o servidor o comando falha. Parece que o binário está corrompido. Por isso, esse commit atualiza o Apache Tika em use para a versão 2.9.1.

Fix #73

Quando tentado rodar o Apache Tika versão 1.9.4 atualmente em uso no
container para rodar o servidor o comando falha. Parece que o binário
está corrompido. Por isso, esse commit atualiza o Apache Tika em use
para a versão 2.9.1.

Signed-off-by: José Guilherme Vanz <jvanz@jvanz.com>
@jvanz jvanz added the bug Something isn't working label Mar 21, 2024
@jvanz jvanz self-assigned this Mar 21, 2024
@jvanz
Copy link
Member Author

jvanz commented Mar 21, 2024

AINDA PRECISO TESTAR ESSA ALTERAÇÃO PARA VER SE O EXTRATOR AINDA FUNCIONA. Então, não podemos fazer o merge dessa PR ainda. Se mais alguém pode testar, seria muito bom.

@ogecece
Copy link
Member

ogecece commented Mar 22, 2024

Também não testei, mas desconfio que não dá certo, pois a partir de alguma versão o tika mudou o endpoint pra extrair o texto puro. Esse processamento deve estar extraindo o conteúdo do arquivo como html.

@xxggabriel
Copy link

Também não testei, mas desconfio que não dá certo, pois a partir de alguma versão o tika mudou o endpoint pra extrair o texto puro. Esse processamento deve estar extraindo o conteúdo do arquivo como html.

Testei o Apache Tika essa semana com a versão 2.9.2 e percebi que, durante a extração de texto, o conteúdo estava sendo extraído como XML. Para corrigir esse problema, adicionei o "Accept": "text/plain" na header do request da função _try_extract_text e funcionou corretamente.

A função da classe ApacheTikaTextExtractor ficou da seguinte forma:

def _try_extract_text(self, filepath: str) -> str:
    if self.is_txt(filepath):
        return self._return_file_content(filepath)
    with open(filepath, "rb") as file:

        headers = {
            "Content-Type": self._get_file_type(filepath),
            "Accept": "text/plain",
        }
        response = requests.put(f"{self._url}/tika", data=file, headers=headers)
        response.encoding = "UTF-8"
        return response.text

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Development

Successfully merging this pull request may close these issues.

Build do servidor Apache Tika está quebrado
3 participants