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官网
可以看到有很多论文集。
打开其中一个可以看到论文列表。