Submit your work to JOJ via cli.
Project description
JOJ-Submitter
Submit your work to JOJ via CLI. Greatly improve your efficiency when uploading to JOJ.
Getting Started
Setup venv (Optional)
python3 -m venv env
source env/Scripts/activate
Install
$ pip install joj-submitter
$ joj-submit --help
Usage: joj-submit [OPTIONS] PROBLEM_URL COMPRESSED_FILE_PATH
LANG:[c|cc|llvm-c|llvm-cc|cmake|make|ocaml|matlab|cs|pas|jav
a|py|py3|octave|php|rs|hs|js|go|rb|other] [SID]
Arguments:
PROBLEM_URL [required]
COMPRESSED_FILE_PATH [required]
LANG:[c|cc|llvm-c|llvm-cc|cmake|make|ocaml|matlab|cs|pas|java|py|py3|octave|php|rs|hs|js|go|rb|other]
other: other | c: C | cc: C++ | llvm-c: C
(Clang, with memory check) | llvm-cc: C++
(Clang++, with memory check) | cmake: CMake
| make: GNU Make | ocaml: OCaml | matlab:
MATLAB | cs: C# | pas: Pascal | java: Java |
py: Python | py3: Python 3 | octave: Octave
| php: PHP | rs: Rust | hs: Haskell | js:
JavaScript | go: Go | rb: Ruby [required]
[SID] [env var: JOJ_SID;default: <EMPTY>]
Options:
-s, --skip Return immediately once uploaded. [default: False]
-a, --all Show detail of all cases, even accepted. [default: False]
-d, --detail Show stderr, Your answer and JOJ answer section. [default: False]
-j, --json Print the result in json format to stdout. [default: False]
--version Show version.
--help Show this message and exit.
Example
First get your JOJ_SID with https://github.com/BoYanZh/JI-Auth or via browser on your own.
Replace <YOUR_JOJ_SID>
in the following methods with your actual SID.
Method 1 Call directly via CLI
- Mark
JOJ_SID
shell variable. - Run
joj-submit
with arguments.
$ export JOJ_SID=<YOUR_JOJ_SID>
$ joj-submit https://joj.sjtu.edu.cn/d/vg101_fall_2020_manuel/homework/5fb1f1379fedcc0006622a06/5fb1ee8b9fedcc00066229d9 ans.zip cc
ans.zip upload succeed, record url https://joj.sjtu.edu.cn/d/vg101_fall_2020_manuel/records/60e42b17597d580006c571d6
status: Accepted, accept number: 49, score: 980, total time: 6167 ms, peak memory: 33.684 MiB
Method 2 Call from Makefile
- Add
export JOJ_SID=<YOUR_JOJ_SID>
to your~/.bashrc
or~/.zshrc
. Do not forget to restart the shell to load the variable. - Edit and add this Makefile to your project https://gist.github.com/BoYanZh/6ee60b76f0fc70389c9ac0988fd16885.
- Run
make joj
.
$ make joj
tar -cvzf p4-src.tar.gz main.cpp
main.cpp
joj-submit https://joj.sjtu.edu.cn/d/ve281_summer_2021_hongyi/homework/60ed8820597d590006d91e44/60ed869b597d590006d91dad p4-src.tar.gz cc -w
p4-src.tar.gz upload succeed, record url https://joj.sjtu.edu.cn/d/ve281_summer_2021_hongyi/records/60f4451537f07210064b8c20
status: Accepted, accept number: 49, score: 980, total time: 6167 ms, peak memory: 33.684 MiB
Acknowledgements
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
joj-submitter-0.0.9.tar.gz
(7.1 kB
view details)
Built Distribution
File details
Details for the file joj-submitter-0.0.9.tar.gz
.
File metadata
- Download URL: joj-submitter-0.0.9.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
e0c2e283824eed59ba384b3aa87fd6dd99f79020fd9f458baea73844dbebcb59
|
|
MD5 |
b96105edabbdb9d8678ccfff3570c009
|
|
BLAKE2b-256 |
f05dde6466e31a6b7b982243edd63d852f4a7b3bd788869df91d08c454acca21
|
File details
Details for the file joj_submitter-0.0.9-py3-none-any.whl
.
File metadata
- Download URL: joj_submitter-0.0.9-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
4c54a95b3cef70d332e7276d6990c6f60f1e208f3ccb8d96b2d1c6b97ce83e11
|
|
MD5 |
cfc063297aebfebbf201039551c017a2
|
|
BLAKE2b-256 |
95b18a150e7552ac9e86fc31bb3cfd8b17be246cbddad03871966ca4be8c67b6
|