西班牙语资源的语料库下载器和阅读器
项目描述
Averell,python 库和命令行界面,有助于使用现有的注释诗歌存储库。Averell 能够下载带注释的语料库并协调不同的 TEI 实体,以提供所需粒度的统一 JSON 输出。也就是说,对于他们的调查,一些研究人员可能需要整首诗,诗逐行分割,或者如果可以的话,甚至逐字逐句。Averell 允许指定最终生成的数据集的粒度,该数据集是与所选语料库中所有实体的组合 JSON。目录中的每个语料库都必须指定解析器以生成预期的数据格式。
免费软件:Apache 软件许可证 2.0
可用语料库(版本 1.1.0)
ID |
姓名 |
郎 |
尺寸 |
文档 |
字 |
粒度 |
执照 |
|---|---|---|---|---|---|---|---|
1 |
迪斯科 V2.1 (disco2_1) |
es |
22M |
4088 |
381539 |
节线 |
抄送 |
2 |
迪斯科 V3 (disco3) |
es |
28M |
4080 |
377978 |
节线 |
抄送 |
3 |
Sonetos Siglo de Oro (adso) |
es |
6.8M |
5078 |
466012 |
节线 |
CC-BY-NC 4.0 |
4 |
ADSO 100 首诗歌语料库 (adso100) |
es |
128K |
100 |
9208 |
节线 |
CC-BY-NC 4.0 |
5 |
Poesía Lírica Castellana Siglo de Oro (plc) |
es |
3.8M |
475 |
299402 |
节行字音节 |
CC-BY-NC 4.0 |
6 |
贡戈科普斯 (gongo) |
es |
9.2M |
481 |
99079 |
节行字音节 |
CC-BY-NC-ND 3.0 FR |
7 |
十八世纪诗歌档案(ecpa) |
zh |
2400M |
3084 |
2063668 |
节行字 |
CC BY-SA 4.0 |
8 |
为了更好的诗句(4b4v) |
zh |
39.5M |
103 |
41749 |
节线 |
未知 |
9 |
Métrique en Ligne (梅尔) |
FR |
183M |
5081 |
1850222 |
节线 |
未知 |
10 |
意大利图书馆 (bibit) |
它 |
242M |
25341 |
7121246 |
节行字 |
未知 |
11 |
捷克诗歌语料库 (czverse) |
CS |
4100M |
66428 |
12636867 |
节行字 |
CC-BY-SA |
12 |
斯蒂科特克 (stichopt) |
pt |
11.8M |
1702 |
168411 |
节线 |
不为人知 |
文档
安装
要安装 averell,请在终端中运行以下命令:
pip install averell
这是安装 averell 的首选方法,因为它将始终安装最新的稳定版本。
如果你没有安装pip,这个Python 安装指南可以指导你完成整个过程。
用法
要显示 averell 帮助:
averell --help
列出所有可用的语料库:
averell list
可用语料库之一的可视化示例:
id name lang size docs words granularity license
---- ------------------- ------ ------ ------ ------- ------------- -----------
1 Disco V2.1 es 22M 4088 381539 stanza CC-BY
line
下载
将所需的语料库下载到“mycorpora”文件夹中:
averell download 2 3 --corpora-folder my_corpora
从其中一个语料库中获得的 TEI 格式的诗歌示例:
<TEI xmlns=<s>"http://www.tei-c.org/ns/1.0"</s>>
<teiHeader>
<fileDesc>
<titleStmt>
<title> Spanish Metrical Patterns Bank: Golden Age Sonnets.</title>
<principal>Borja Navarro Colorado</principal>
<respStmt>
<name>María Ribes Lafoz</name>
<name>Noelia Sánchez López</name>
<name>Borja Navarro Colorado</name>
<resp>Metrical patterns annotation</resp>
</respStmt>
</titleStmt>
<publicationStmt>
<publisher>Natural Language Processing Group. Department of Software and Computing Systems. University of Alicante (Spain)</publisher>
</publicationStmt>
<sourceDesc>
<bibl><title>Sonetos</title> de <author>Garcilaso de La Vega</author>. <publisher>Biblioteca Virtual Miguel de Cervantes</publisher>, edición de <editor role=<s>"editor"</s>>Ramón García González</editor>.</bibl>
</sourceDesc>
</fileDesc>
<encodingDesc>
<metDecl xml:id=<s>"bncolorado"</s> type=<s>"met"</s> pattern=<s>"((\+|\-)+)*"</s>>
<metSym value=<s>"+"</s>>stressed syllable</metSym>
<metSym value=<s>"-"</s>>unstressed syllable</metSym>
</metDecl>
<metDecl>
<p>All metrical patterns have been manually checked.</p>
</metDecl>
</encodingDesc>
</teiHeader>
<text>
<body>
<head>
<title>-XX-</title>
</head>
<lg type=<s>"cuarteto"</s>>
<l n=<s>"1"</s> met=<s>"-++--++--+-"</s>>Con tal fuerza y vigor son concertados</l>
<l n=<s>"2"</s> met=<s>"-----+-+-+-"</s>>para mi perdición los duros vientos,</l>
<l n=<s>"3"</s> met=<s>"--+--+---+-"</s>>que cortaron mis tiernos pensamientos</l>
<l n=<s>"4"</s> met=<s>"+----++--+-"</s>>luego que sobre mí fueron mostrados.</l>
</lg>
<lg type=<s>"terceto"</s>>
<l n=<s>"5"</s> met=<s>"-++--+---+-"</s>>El mal es que me quedan los cuidados</l>
<l n=<s>"6"</s> met=<s>"---+-----+-"</s>>en salvo de estos acontecimientos,</l>
<l n=<s>"7"</s> met=<s>"-++--+---+-"</s>>que son duros, y tienen fundamentos</l>
</lg>
</body>
</text>
</TEI>
从输入 XML/TEI 诗歌生成的示例 JSON 文件到 my_corpora/{corpus}/averell/parser/{author_name}/{poem_name}.json
{
"manually_checked": true,
"poem_title": "-XX-",
"author": "Garcilaso de La Vega",
"stanzas": [
{
"stanza_number": "1",
"stanza_type": "cuarteto",
"lines": [
{
"line_number": "1",
"line_text": "Con tal fuerza y vigor son concertados",
"metrical_pattern": "-++--++--+-"
},
{
"line_number": "2",
"line_text": "para mi perdición los duros vientos,",
"metrical_pattern": "-----+-+-+-"
},
{
"line_number": "3",
"line_text": "que cortaron mis tiernos pensamientos",
"metrical_pattern": "--+--+---+-"
},
{
"line_number": "4",
"line_text": "luego que sobre mí fueron mostrados.",
"metrical_pattern": "+----++--+-"
}
],
"stanza_text": "Con tal fuerza y vigor son concertados\npara mi perdición los duros vientos,\nque cortaron mis tiernos pensamientos\nluego que sobre mí fueron mostrados."
},
{
"stanza_number": "2",
"stanza_type": "terceto",
"lines": [
{
"line_number": "5",
"line_text": "El mal es que me quedan los cuidados",
"metrical_pattern": "-++--+---+-"
},
{
"line_number": "6",
"line_text": "en salvo de estos acontecimientos,",
"metrical_pattern": "---+-----+-"
},
{
"line_number": "7",
"line_text": "que son duros, y tienen fundamentos",
"metrical_pattern": "-++--+---+-"
}
],
"stanza_text": "El mal es que me quedan los cuidados\nen salvo de estos acontecimientos,\nque son duros, y tienen fundamentos"
}
]
}
出口
现在我们可以通过“粒度”选择来组合和加入这些语料库:
averell export 2 3 --granularity line --corpora-folder my_corpora --filename export_1
它会生成一个 JSON 文件,其中包含有关这些语料库中所有行的信息。文件 mycorpora/export_1.json中两个随机行的示例:
{
"line_number": "5",
"line_text": "¿Has visto que en el mismo lugar donde",
"metrical_pattern": "++---+--++-",
"stanza_number": "2",
"manually_checked": false,
"poem_title": " - II - ",
"author": "Mira de Amescua",
"stanza_text": "¿Has visto que en el mismo lugar donde\nbordado estuvo el cristalino velo\nun bordado terliz de escarcha y hielo\nhace que el campo de verdor se monde?",
"stanza_type": "cuarteto"
}
{
"line_number": "10",
"line_text": "el que a lo cierto no a lo incierto mira,",
"metrical_pattern": "---+-+-+-+-",
"stanza_number": "3",
"manually_checked": false,
"poem_title": "- VIII - Considerando un sepulcro y los que están en él ",
"author": "Lope de Zarate",
"stanza_text": "De aquí si que consigue el ser dichoso\nel que a lo cierto no a lo incierto mira,\npues le adorna lo eterno fastuoso;",
"stanza_type": "terceto"
}
默认情况下,如果需要,导出将下载语料库。为了避免这种行为,可以传入标志--no-download 。
导出的语料库可以轻松加载到 Pandas 中
averell export adso100 --filename adso100.json
import pandas as pd
adso100 = pd.read_json(open("adso100.json"))
关于 IDS 的说明
IDS 可以是averell 列表输出中的数字标识符、语料库短代码(显示在括号之间)、特殊文字all表示所有语料库,或两个字母的 ISO 语言代码表示特定语言的可用语料库。
例如,命令averell export 1 bibit fr将导出 DISCO V2.1、Biblioteca Italiana 诗歌语料库,以及在单个文件中逐行拆分诗歌的所有带有法语语言标签的语料库。
变更日志
1.2.1 (2021-07-14)
- 添加了两个新的阅读器:
export_filename也作为export_corpora的输出返回
修正书写功能,以免重复信息
为了清楚起见,将名称键更改为语料库
修复 Windows 系统上的路径拆分
将语料库名称添加到 averell 输出文件
1.1.0 (2020-09-18)
添加Biblioteca Italiana (bibit)阅读器
将 Archivio Metrico Italiano 信息添加到 Biblioteca Italiana 阅读器
减少夹具文件大小
将 tmp 文件添加到 git ignore
添加语言和其他一些外观更改
使用averell list命令的预期输出修复错误
添加 slugs、langs 和“全部”以下载和导出
修复覆盖
添加文档并修复测试
1.0.3 (2020-09-03)
添加了export --filename选项
添加了两个新的阅读器:
为了更好的诗句
线性计量表
1.0.2 (2020-06-23)
添加了两个新的阅读器:
ECPA语料库
宫体
修正了一些小错误
1.0.1 (2020-05-18)
设置 bubbpversion
与 Zenodo 集成
1.0.0 (2020-04-29)
删除 commits-since 代码块
在标签发布时将自动部署添加到 PyPI
添加菜单
删除注释和更简洁的代码修复
修复测试的排序输出
添加了适当的文档和覆盖测试
添加了导出功能的测试
增加导出功能
添加TEI_NAMESPACE作为常量
固定文档。使用Path固定负载。修复了日志记录错误
添加了测试
0.0.1 (2020-01-08)
PyPI 上的第一个版本。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。