Pergunta

Nós extrair várias informações de e-mails - voos, aluguel de carros, hotéis e muito mais. o método é extrair o corpo do e-mail, geralmente em forma de HTML, mas em algum momento ele de texto ou usamos a informação em um / Word / anexo em PDF RTF. Em seguida, aplicamos expressões regulares (por vezes em várias etapas), a fim de obter informações, que é fornecido em forma de tabela (você pode pensar em uma mesa de vôo, mesa de hotel, etc.). Observe, ainda que analisar HTML, isso não é web scraping.

Atualmente estamos usando o motor WebQL de QL2, mas nós estamos olhando para substituí-lo por razões de negócios. Você pode recomendar outro motor? Ele deve ser executado no Linux e ser acessível a partir de Java (a API Java seria o melhor, mas os serviços da Web são boa solução também). Ele também deve suportar expressões regulares para extração de texto e não apenas para ser com base na estrutura HTML.

Foi útil?

Solução 3

Apenas queria atualização - a nossa decisão final foi para implementar a análise em Groovy , e para adicionar algum funcionalidade necessária (html para texto, pdf ao texto, espaço em branco limpo, etc.), quer pela implementação em Java ot por depender de bibliotecas 3o partido.

Outras dicas

Eu recomendo que você tem uma olhada R . Ele tem um extenso número de pacotes de mineração de texto: ter um olhar para o Processamento de Língua Natural ver . Em particular, olhar para o pacote tm. Aqui estão alguns links relevantes:

Além disso, R fornece muitas ferramentas para análise de HTML ou XML. Ter uma olhada esta pergunta para um exemplo usando os pacotes RCurl e XML .

Editar: Você pode integrar R com Java com JRI . É um pacote muito utilizado, com muitos exemplos. Você também pode ver essas perguntas relacionadas .

Tenha um olhar em:

  • LingPipe - LingPipe é um conjunto de bibliotecas Java para a análise lingüística de humano linguagem.
  • Lucene - Apache Lucene é um alto desempenho, texto biblioteca full-featured motor de pesquisa escrito inteiramente em Java.

Eu uso um analisador personalizado feito com Flex e C ++ para fins semelhantes. Eu sugiro que você dê uma olhada em geradores de analisador em Java (arquivos JavaCC .jj) javacc-faq Nutch faz isso dessa maneira. (NutchAnalysis.jj)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top