support yukicoder token
See original GitHub issuehttps://t.co/KXCa8x4WC1
— yukicoder公式アカウント (@yukicoder) February 7, 2020
ヘルプページに「ログインしてないと使えない機能をAPIとして使いたい」を追記しました
verify helper から yukicoder が利用できるとうれしいので対応したい。
実装は単に --yukicoder-token みたいなオプションを用意するのがよさそう。YUKICODER_TOKEN みたいな環境変数を設定させてそれを読むのは一般には自然だが、現状の online-judge-tools は他にはまったく環境変数を見ないので一貫性が損われる。
「token を発行して適切に設定する」をエンドユーザにやらせるのは要求が大きすぎて良くない (例: verify helper のドキュメント生成機能を使えている人は半数ぐらいしかいない) のだけど、妥協案としては妥当。いままではログイン方法が多すぎ (これ自体はとてもよいこと) なためログイン自動化も無理で詰んでたので、可能になっただけでもありがたい。
cc: @beet-aizu
Issue Analytics
- State:
- Created 4 years ago
- Reactions:2
- Comments:5 (5 by maintainers)
Top Results From Across the Web
support yukicoder token #672 - online-judge-tools/oj · GitHub
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the...
Read more >cargo-compete - crates.io: Rust Package Registry
A Cargo subcommand for competitive programming. Supports AtCoder, Codeforces, and yukicoder. Other websites are available via online-judge-tools/api-client.
Read more >online-judge-api-client: Versions | Openbase
Full version history for online-judge-api-client including change logs.
Read more >https://raw.githubusercontent.com/online-judge-too...
... cases of AtCoder with `$ oj download --system --dropbox-token=... https://. ... support yukicoder token ([@beet-aizu](https://github.com/beet-aizu)) ...
Read more >online-judge-tools - PyPI
AtCoder; yukicoder (via github.com or session token); Codeforces ... #!/usr/bin/env python3 from onlinejudge.service.atcoder import * for contest in ...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

実はダウンロード部分はすでに実装済みです。以下のように実行すれば (login には webdriver を追加でインストールする必要があるけど) システムケースは取れます。なので、HTTPリクエストヘッダーになにかを設定するあたりだけやれば終わるはず。
https://github.com/kmyk/online-judge-tools/blob/e311e7cf1ed6cfb91fa8cb381ad5cdb06a57ef33/onlinejudge/service/yukicoder.py#L259-L270
ツイートボタンの横に ProblemId: で書いてありますね(目がついてなかった)