Closed jvanz closed 1 month ago
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.
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.
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
Testei aqui e vou mesclar. Obrigado @xxggabriel !
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