Acl论文集检索下载小助手


acl-anthology-helper

Github源代码仓库

https://github.com/tangg555/acl-anthology-helper

acl-anthology-helper

acl-anthology-helper的主要目的是快速地从’acl anthology’ (https://aclanthology.org/)官网上下载指定论文集中包含某些关键词的论文.

主要功能

  • 检索acl anthology 官网中收录的论文。

    直接从网上检索.

    e.g. Retriever.acl(2021, ConfConsts.LONG)

    将论文保存到本地数据库中(MySQL).

    e.g.

    db = AnthologyMySQL(cache_enable=True)

    db.create_tables()

    db.load_data() # 将数据爬取载入数据库中
  • 引入ABuilder 以支持对MySQL 的链式操作。

    e.g.

    data = ABuilder().table('paper').where({"year": ["in", years_limit]}).where({"venue": ["in", venue_limit]}).query()
  • 通过关键词对论文进行过滤。

    e.g. filtered = papers.filter('title', 'xxx') | papers.filter('abstract', 'xxx')

    e.g. filtered = papers.and_containing_filter(attr, [keyword1, keyword2])
  • 下载所需要的论文。

    e.g. downloader.multi_download(filtered, download_path)
  • 本地缓存。
  • 日志打印。
  • 信息采集。

快速开始

  • 首先, 你需要安装MySQL ,我使用的是MySQL 8。

    配置你的MySQL数据库,添加 src/configuration/mysql_cfg.py文件。

    src/configuration/mysql_cfg.py 的文件内容可以参考以下格式:

    class MySQLCFG(object):
      HOST = 'localhost'
      PORT = 3306
      USER = "root"
      PASSWORD = "xxx"
      DB = "xxx"

    同时,在MySQL中创建相应的数据库。

  • 如果你想使用 ABuilder 对MySQL进行链式查询。

    你需要写一个ABuilder的配置文件 tasks/database.py

    具体内容你可以参考ABuilder.

  • 下载代码,打开终端切换至代码的根目录。
    运行

    pip install requirements.txt
    cd tasks
    python basic_task.py

提示

该项目用 Python 3.6 所写, 不支持 Python 2。

ACL Anthology官网

可以看到有很多论文集。

打开其中一个可以看到论文列表。


文章作者: 唐晨
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 唐晨 !
评论
  目录