File size: 2,061 Bytes
0841c28
 
 
 
 
 
 
 
 
 
 
 
c149479
 
c54c848
c149479
 
 
 
 
 
 
 
 
 
 
b870560
 
 
 
 
c149479
b870560
 
c149479
 
 
 
 
 
 
348017a
c149479
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
348017a
 
0841c28
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
---
title: Paper Hero
emoji: πŸ’ͺ
colorFrom: indigo
colorTo: yellow
sdk: docker
app_port: 7860
pinned: true
license: apache-2.0
---


# πŸ’ͺ Paper Hero

A toolkit to help search for papers from aclanthology, arXiv and dblp.

## 🌴 Setup

1. Make sure you have [Git](https://git-scm.com/) and [Python](https://www.python.org/downloads/) 3.10.8 installed (or Python >= 3.9).
2. Install dependencies: `pip install -r requirements.txt`

## πŸš€ QuickStart

Run the example in `run.py`:

```bash
$ # clone this repo
$ git clone https://github.com/Spico197/paper-hero.git
$ cd paper-hero
$ # get ready for the acl data, since it is cache-based
$ bash scripts/get_aclanthology.sh
$ python run.py
$ # the results will be saved into `results/`, check them out πŸŽ‰
$ ls results
```

```python
from src.interfaces.aclanthology import AclanthologyPaperList
from src.utils import dump_paper_list_to_markdown_checklist

if __name__ == "__main__":
    # use `bash scripts/get_aclanthology.sh` to download and prepare anthology data first
    paper_list = AclanthologyPaperList("cache/aclanthology.json")
    ee_query = {
        "title": [
            # Any of the strings below is matched
            ["information extraction"],
            ["event", "extraction"],    # title must include `event` and `extraction`
            ["event", "argument", "extraction"],
            ["event", "detection"],
            ["event", "classification"],
            ["event", "tracking"],
            ["event", "relation", "extraction"],
        ],
        # Besides the title constraint, venue must also meet the needs
        "venue": [
            ["acl"],
            ["emnlp"],
            ["naacl"],
            ["coling"],
            ["findings"],
            ["tacl"],
            ["cl"],
        ],
    }
    ee_papers = paper_list.search(ee_query)
    dump_paper_list_to_markdown_checklist(ee_papers, "results/ee-paper-list.md")
```

## πŸ—ΊοΈ Roadmap

- [x] aclanthology
- [x] arXiv
- [x] dblp
- [x] add frontend support for building a demo
- [x] year and month searching