Parsear documentos HTML

1. Parsear documentos HTML

Ramiro
ramiro99

(usa Linux Mint)

Enviado em 09/06/2013 - 00:45h

Fala galera,
estou fazendo um trabalho da facul e preciso de uma ajudinha de vcs...tenho de fazer um script em shell que faz a seguinte proeza: dado um conjunto de arquivos HTML, parsear todos os documentos (retirar tags, acentos, letras maiúsculas, etc..) e apresentar para o usuário todas as palavras que aparecem no documento, seguida do número de ocorrências da mesma e qual documento se encontra o termo.

Dado o problema, pensei bastante a respeito e comecei o desenvolvimento, e cheguei a conclusão que usando tabela hash seria uma solução mais cabível. O problema é que preciso ler cada arquivo separadamente e armazenar em uma tabela hash. Estou utilizando (ou tentando, rs) fazer uma regex pra retirar as tags HTML. Segue abaixo o código que comecei...pessoal, qualquer ajuda é bem-vinda, não quero resposta pronta, quero uma orientação de quem já tem um conhecimento a mais...

DIRETORIO="/home/ramiro/praticaORI/arquivos_html/*"

# Declaração do Hash
declare -A hash

# Adiciona os tokens do documento no Hash - 1º Param: hash / 2º Param: arquivo
addItemHash () {
cat $2 | sed 's/\(<.*>\|<.*[ ]>\)//g'

while read LINHA
do
for PALAVRA in $LINHA
do
let $1[$PALAVRA]++
done
done < $2
}

# Mostra as palavras e a quantidade de vezes em que elas apareceram
mostraItemHash () {
for chave in ${!hash[@]}
do
tput bold; echo -n "$chave"; tput sgr0
echo -n " apareceu "
tput bold; echo -n ${hash[$chave]} ; tput sgr0
echo " vez(es)."
done
}

addItemHash "hash" "$DIRETORIO"
mostraItemHash


  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts