【问题标题】:How to use MediaWiki::DumpFile to convert Wikipedia XML dump to HTML?如何使用 MediaWiki::DumpFile 将 Wikipedia XML 转储转换为 HTML?
【发布时间】:2013-12-06 09:22:12
【问题描述】:

在页面MediaWiki::DumpFile 上存在以下代码:

  use MediaWiki::DumpFile;

  $mw = MediaWiki::DumpFile->new;

  $sql = $mw->sql($filename);
  $sql = $mw->sql(\*FH);

  $pages = $mw->pages($filename);
  $pages = $mw->pages(\*FH);

  $fastpages = $mw->fastpages($filename);
  $fastpages = $mw->fastpages(\*FH);

  use MediaWiki::DumpFile::Compat;

  $pmwd = Parse::MediaWikiDump->new;

我对 Perl 完全陌生,不知道如何使用 $fastpages 从 XML 转储中保存所有 HTML 页面(或文本,没关系)。你能帮助我吗?什么是*FH?

【问题讨论】:

标签: html xml perl cpan wikitext


【解决方案1】:

我没有使用它,但MediaWiki::DumpFile::FastPages 的文档有以下示例,用于在转储文件中打印每篇文章的标题和文本:

use MediaWiki::DumpFile::FastPages;

$pages = MediaWiki::DumpFile::FastPages->new($file);
$pages = MediaWiki::DumpFile::FastPages->new(\*FH);

while(($title, $text) = $pages->next) {
  print "Title: $title\n";
  print "Text: $text\n";
}

这会将所有内容写入stdout。当您创建MediaWiki::DumpFile::FastPages 对象时,您可以传递一个文件名称,例如

$file = "/path/to/dump/file";
$pages = MediaWiki::DumpFile::FastPages->new($file);

或对文件的引用句柄,例如

open FH, "<", "/path/to/dump/file" or die "Failed to open file: $!";
$pages = MediaWiki::DumpFile::FastPages->new(\*FH);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2014-03-08
    相关资源
    最近更新 更多