Descobri dois erros no algoritmo debaixo. Já corrigi. Está nesse link aqui a versão corrigida: http://paste.la/376
E também otimizei na fase 1. Ele não lê mais caractéres "\n" (indicam nova linha). Essa filtragem possibilitou a correção de um importante erro.
Erro 1:
As vezes a página pode ficar nesse formato:
a
href="site"
Assim, é lida seguinte sequência: a\nhref="site". Por causa desse \n o algoritmo não achava a sequência certa.
Erro 2:
Quando uma página referencia outra da seguinte maneira:
Ex:
"site" -> "site/cadastro.html"
Na sintaxe HTML esse tipo de referencia é escrito assim:
a href = "cadastro.html"
Quando ele lia isso tentava criar um objeto URL somente com: documentacao.html, nisso uma exceção é disparada, porque não existe uma página desse jeito. Agora, ele concatena com o nome do site. Assim, um URL correto é formado.
p.s: Na fase 1, mandei ele ler e converter cada caractér para minúsculo. Assim, não corre o risco de não achar nada em páginas com comandos HTML em maiúsculo.
Testei na página do professor Rafael Rosales. Leva mais ou menos 30 segundos.
dfm.ffclrp.usp.br/~rrosales
Passed in SCBCD 5 exam
Há 14 anos
Nenhum comentário:
Postar um comentário