Skip to main content

西班牙语资源的语料库下载器和阅读器

项目描述

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

节线

不为人知

文档

https://averell.readthedocs.io/

安装

要安装 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 上的第一个版本。

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

averell-1.2.2.tar.gz (182.6 kB 查看哈希)

已上传 source

内置分布

averell-1.2.2-py2.py3-none-any.whl (28.6 kB 查看哈希)

已上传 py2 py3