wget baixa recursivamente de páginas com muitos links

wget baixa recursivamente de páginas com muitos links

Ao usar o wget com a opção recursiva ativada, recebo uma mensagem de erro ao tentar baixar um arquivo. Ele acha que o link é um arquivo para download, quando na realidade deveria apenas segui-lo para chegar à página que realmente contém os arquivos (ou mais links a seguir) que desejo.

wget -r -l 16 --accept=jpg website.com

A mensagem de erro é: .... pois deveria ser rejeitada. Isso geralmente ocorre quando o link do site que ele está tentando buscar termina com uma instrução sql. O problema, entretanto, não ocorre ao usar o mesmo comando wget nesse link. Quero saber exatamente como ele está tentando buscar as páginas. Acho que sempre posso dar uma olhada na fonte, embora não saiba o quão confuso é o projeto. Também posso estar perdendo exatamente o que "recursivo" significa no contexto do wget. Achei que iria percorrer e viajar em cada link obtendo os arquivos com a extensão que solicitei.

Postei isso no stackOverFlow, mas eles me entregaram aqui :) Espero que vocês possam ajudar.

EDIT: Saída de mensagem de erro

2010-04-13 16:54:47 (128 KB/s) - `somewebsite.com/index.php?id=917218' saved [10789]

Removing somewebsite.com/index.php?id=917218 since it should be rejected.

Prefiro não revelar a origem do site :)

Responder1

Como apontado por Hugh Allen, usar apenas --accept=jpgfará com que o wget carregueapenasarquivos com extensão .jpg (e .htm, .html, que são sempre buscados). É por isso que o wget informa que removerá o arquivo php. Então tente usar --accept=jpg,phpou similar.

Veja omanual do wgetpara detalhes. Recomendo que você leia, pois explica todo o mecanismo de aceitação/rejeição detalhadamente.

Responder2

Talvez --accept=jpgsignifique rejeitar todo o resto.

informação relacionada