Espelhar um blog com wget

9

Estou tentando espelhar um blog, por exemplo www.example.com, com wget.

Eu uso o wget com as seguintes opções (variáveis ​​de shell são substituídas corretamente):

wget -m -p -H -k -E -np \
    -w 1 \
    --random-wait \
    --restrict-file-names=windows \
    -P $folder \
    -Q${quota}m \
    -t 3 \
    --referer=$url \
    -U 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4' \
    -e robots=off \
    -D $domains
    -- $url

O blog contém imagens que residem em outros domínios.

Embora eu tenha especificado a -popção (baixar ativos da página vinculada), essas imagens não serão baixadas, a menos que eu especifique explicitamente cada domínio na -Dopção.

Se eu omitir a -Dopção, o wget seguirá todos os links externos www.example.come fará o download de toda a Internet.

É possível wgetsimplesmente seguir todos os links abaixo www.example.come fazer o download dos recursos necessários de cada página, estejam eles no mesmo domínio ou não, sem que eu precise especificar cada domínio explicitamente?

Kostas Andrianopoulos
fonte
Eu adoraria encontrar uma boa resposta para essa também. Corri para a mesma situação e não consegui encontrar uma única chamada do wget que fizesse isso. Acabei usando wget -N -E -H -k -K -pprimeiro e criei um script para buscar imagens vinculadas ausentes.
Lemonsqueeze 16/10
5
De acordo com este , o httrack é um assassino para isso. Vou tentar na próxima vez, em vez de no wget.
Lemonsqueeze
Assumindo seu blog (menos os ativos de página) não está abrangendo vários domínios, tente remover tanto o -D $domainsbem como -H. Sem -Hele, ele deve permanecer no seu domínio, mas ainda recuperar os ativos diretos da página, mesmo quando eles estão em um domínio diferente.
precisa saber é o seguinte

Respostas:

1

Não, a única maneira é especificar os domínios que você deseja seguir usando -D ou --domains = [lista de domínios] (na forma de lista separada por vírgula)

faíscas
fonte