Pergunta

Eu gostaria de obter o HTML de uma página MediaWiki, que é que eu quero executar o MediaWiki Markup através do analisador. Agora, eu sei que eu poderia usar apenas alguns Analisador externo, mas a maioria deles não suportam inclusão e (naturalmente) Extensions, por isso a minha saída será diferente.

Como tenho acesso à instalação MediaWiki, eu me pergunto se eu posso apenas usar o built-in analisador para me processar a página. Eu não quero fazer tela raspagem por causa de todas as outras coisas na página (navegação, barra lateral, JavaScript e CSS inclui etc.), eu literalmente só quero o corpo.

Se é importante, ele está sendo executado MediaWiki 1.12 em PHP 5.2.

Foi útil?

Solução

Use action = tornar; por exemplo index.php? title = article_title & action = tornar

Outras dicas

Sim, você pode fazer isso, como uma questão de fato, eu lembro de ter feito isto mesmo em muitas das minhas extensões disponíveis aqui .

encontrado da minha extensão que faz isso:. SecureTransclusion

trecho seguinte:

public function mg_strans( &$parser, $page, $errorMessage = null, $timeout = 5 ) {

    if (!self::checkExecuteRight( $parser->mTitle ))
        return 'SecureTransclusion: '.wfMsg('badaccess');

    $title = Title::newFromText( $page );
    if (!is_object( $title ))
        return 'SecureTransclusion: '.wfMsg('badtitle')." ($page)";

    if ( $title->isTrans() )
        $content = $this->getRemotePage( $parser, $title, $errorMessage, $timeout );
    else
        $content = $this->getLocalPage( $title, $errorMessage );

    $po = $parser->parse( $content, $parser->mTitle, new ParserOptions() );
    $html = $po->getText();

    return array( $html, 'noparse' => true, 'isHTML' => true );
}

Que tal usar o analisador MediaWiki atual? Basta pegar a saída convertida, dizem

a partir <!-- start content --> a qualquer <div class="printfooter">

ou NewPP limit report. Este último começa estatísticas do pré-processador. Dessa forma, todos os quadros laterais e banners são omitidos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top