Como posso baixar um fórum phpbb (ativo) inteiro?

5

Um dos fóruns que eu frequento (e adicionei muito conteúdo de qualidade também) parece estar tendo problemas com seu servidor. Eu não estou confiante em sua capacidade de resolver os problemas que eles estão tendo e em falar com um dos administradores que ele mencionou que eles não apoiam os dados.

Como uma resposta completa, caso algo fique horrivelmente errado, eu quero baixar o fórum inteiro. Estou ciente de que não posso baixar o banco de dados ou os arquivos PHP, etc ... Eu só quero fazer uma cópia localmente navegável de todo o fórum.

Isso significa que eu posso (quando tiver tempo) transferir as postagens para o novo site, caso elas estejam começando de novo (de propósito ou não).

Existe alguma ferramenta que permita isso?

Nota: Obviamente é muito importante que eu possa navegar localmente ... o que seria muito difícil se cada um dos links ainda apontasse para ' link 'em vez de' /forum/specific_page.php '.

    
por user28163 04.03.2010 / 19:43

5 respostas

7

Eu estou fazendo isso agora. Aqui está o comando que estou usando:

wget -k -m -E -p -np -R memberlist.php*,faq.php*,viewtopic.php*p=*,posting.php*,search.php*,ucp.php*,viewonline.php*,*sid*,*view=print*,*start=0* -o log.txt http://www.example.com/forum/

Eu queria despir essas coisas id ids da sessão (sid = blahblahblah). Eles parecem ser adicionados automaticamente pela página de índice e, em seguida, são anexados a todos os links de forma semelhante a vírus. Exceto por um squirreled away em algum lugar - que liga a um index.php simples que então continua sem o parâmetro sid =. (Talvez haja uma maneira de forçar o wget recursivo a iniciar do index.php - não sei).

Eu também excluí algumas outras páginas que levam a muita perda de arquivos. Em particular, memberlist.php e viewtopic.php, onde p = é especificado, pode criar milhares de arquivos!

Devido a esse erro no link do wget , ele ainda fará o download de um número surpreendente desses arquivos inúteis - especialmente visuais. php? p = ones - antes de simplesmente excluí-los. Então isso vai queimar muito tempo e largura de banda.

    
por 05.03.2010 / 15:25
2

Recentemente, enfrentei um problema semelhante com um site phpBB que freqüentei e enfrentei uma extinção iminente (infelizmente, devido à falência do administrador). Com mais de 7 anos de postagens no fórum eu não queria vê-lo desaparecer, então eu escrevi um script perl para percorrer todos os tópicos e salvá-los no disco como arquivos HTML simples. Caso alguém esteja enfrentando um problema semelhante, o script está disponível aqui:

link

Ele depende de um regex para extrair o número de postagens em um tópico (necessário para paginar), mas diferente disso geralmente deve funcionar. Alguns dos regexes podem precisar de ajustes dependendo do seu tema phpBB.

    
por 14.03.2012 / 16:25
1

Tente uma combinação de sinalizadores de wget como:

wget -m -k www.example.org/phpbb

Onde -m é mirror e -k é "converter links". Você também pode querer adicionar -p, para baixar imagens, pois não consigo me lembrar se -m faz isso.

    
por 04.03.2010 / 19:47
0

aqui algumas informações adicionadas a @ andrew-russell

ainda muito barulho, mas um começo se você precisar fazer o login.

Este projeto parece promissor, mas não funcionou bem para mim: link

Exemplo com login:

PHPBB_URL=http://www.someserver.com/phpbb
USER=MyUser
PASS=MyPass

wget --save-cookies=./session-cookies-$USER $PHPBB_URL/ucp.php?mode=login -O - 1> /dev/null 2> /dev/null

SID='cat ./session-cookies-$USER | grep _sid | cut -d$'1' -f7'

echo "Login $USER --> $PHPBB_URL SID=$SID"

wget --save-cookies=./session-cookies-$USER \
 --post-data="username=$USER&password=$PASS&redirect=index.php&sid=$SID&login=Login" \
 $PHPBB_URL/ucp.php?mode=login --referer="$PHPBB_URL/ucp.php?mode=login" \
 -O - 1> /dev/null 2> /dev/null

wget --load-cookies ./session-cookies-$USER -k -m -E -p -np -R memberlist.php*,faq.php*,viewtopic.php*p=*,posting.php*,search.php*,ucp.php*,viewonline.php*,*sid*,*view=print*,*start=0* $PHPBB_URL/viewtopic.php?t=27704

######## loop thru topics see below(but above should get most with the options. 
#wget --load-cookies ./session-cookies-$USER -k -m -E -p -np -R $PHPBB_URL/viewtopic.php?t={1..29700}
    
por 31.10.2018 / 17:59
-1

HTTrack é uma ferramenta que pode ajudá-lo. Não tenho certeza se isso funcionará nos fóruns.

    
por 04.03.2010 / 20:30