5个不稳定版本
0.3.0 | 2024年1月7日 |
---|---|
0.2.2 | 2019年9月16日 |
0.2.1 | 2019年9月16日 |
0.2.0 | 2019年9月14日 |
0.1.0 | 2019年9月14日 |
#2494 in 解析器实现
每月 36 次下载
在 tantivy-object-store 中使用
22KB
353 行
wikidump
这个crate处理Mediawiki XML备份文件,并将它们转换为易于消费的数据,用于语言分析、自然语言处理和其他应用。
示例
let parser = Parser::new()
.use_config(config::wikipedia::english());
let site = parser
.parse_file("tests/enwiki-articles-partial.xml")
.expect("Could not parse wikipedia dump file.");
assert_eq!(site.name, "Wikipedia");
assert_eq!(site.url, "https://en.wikipedia.org/wiki/Main_Page");
assert!(!site.pages.is_empty());
for page in site.pages {
println!("Title: {}", page.title);
for revision in page.revisions {
println!("\t{}", revision.text);
}
}
lib.rs
:
此crate可以处理Mediawiki XML备份(备份)文件,并允许您提取所需的数据。
示例
use wikidump::{config, Parser};
let parser = Parser::new().use_config(config::wikipedia::english());
let site = parser
.parse_file("tests/enwiki-articles-partial.xml")
.expect("Could not parse wikipedia dump file.");
assert_eq!(site.name, "Wikipedia");
assert_eq!(site.url, "https://en.wikipedia.org/wiki/Main_Page");
assert!(!site.pages.is_empty());
for page in site.pages {
println!("\nTitle: {}", page.title);
for revision in page.revisions {
println!("\t{}", revision.text);
}
}
依赖项
~4MB
~65K SLoC