An online tool (crawler) to analyze users performance in online judges (coding competition websites). Supported OJ: POJ, HDU, HYSBZ, CodeForces, UVA, ICPC Live Archive, FZU, SPOJ, Timus (URAL), LeetCode_CN, CSU, LibreOJ, 洛谷, 牛客OJ, Lutece (UESTC), AtCoder, AIZU, CodeChef, El Judge, BNUOJ, Codewars, UOJ, NBUT, 51Nod, DMOJ, VJudge
AGPL-3.0 License
简体中文版:README_zh-hans.md
See the README file in each module for specific documents.
make help
in repository root to view document.There are two ways to deploy this project in a server.
Execute following code in shell to deploy the project to port 3000.
curl -s https://raw.githubusercontent.com/Liu233w/acm-statistics/master/tools/remote-docker-up.sh | bash
Vjudge crawler is not available in this way.
In this way you are able to customise the configuration, enabling all features.
# Create a folder to store config files
mkdir -p ~/www/acm-statistics
cd ~/www/acm-statistics
# Download runner script and add permissions
curl https://raw.githubusercontent.com/Liu233w/acm-statistics/master/tools/remote-docker-up.sh -o run.sh
chmod +x run.sh
# Run the script once to generate configuration file. It will exit after the line `.env file created, remember to edit it` is shown.
./run.sh
# Edit the config file following the description in it.
vim .env
# Now we can run the project by the script
./run.sh
Then you can use tools such as systemd to run ./run.sh
.
./tools/acm-statistics.service is a template config file of systemd.
run.sh
checks updates when it is starting. If there are updates to template.env
, run.sh
will exit and ask you to compare these two files. The script compares the line count of the two files to check update, please make sure they are identical when editing.
.env
file. It is /adminer
by default.
acm_statistics
. Username is root
. You can set password in .env
db-backup
folder, which is in the folder that contains config files.crawler/crawlers
are under AGPL-3.0 licensecrawler/crawlers
are under BSD 2-Clause license.Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!