AtCoder上で過去に提出したソースコードをローカルに保存する
この記事は、Competitive Programming Advent Calendar 2016(その2)の9日目の記事です。
ACしたソースコードは削除してしまう運用をしていましたが、ふと過去に提出したソースコードをローカルに保存したくなったので、プログラムを書きました。
同じ気持ちになった人は是非ご利用下さい。
以下プログラムの簡単な仕様です
- 本プログラムを実行した階層に、「(コンテスト名)-(問題ID)_(submitID).cpp」という名称のファイルが大量に作成されます。(例:"abc001-A_582728.cpp")
- 「ME='Yazaten'」という文のYazatenを自分のAtCoder IDに変更して使用して下さい。
- ABC,ARC以外のコンテストに提出したソースコードについては対応していません。
- およそ1秒あたり1ソースコードを取得する設計になっているので、「保存するソースコード数 * 1秒」以上の実行時間がかかります。
著作権の話
ソースコードの著作権が少し気になってAtCoderの規約と著作権法を雑に読みました。
結論だけ話すと、自分のソースコードを取得することは問題無さそうです。
他人のソースコードを取得することが違法かどうかはよくわからない*1ので、非推奨としておきます。
( 間違っていればご指摘いただけるとありがたいです )
ソースコード
- 本プログラムはpythonで書かれています。
- python 2.7.9で動作することを確認しています。
- 適当に書いたので冗長かもしれませんが、ご容赦ください。
- skht777さんの作成したAPI( 元プログラムの作者はYSRKENさん? )を利用しています。
参考文献
明日、10日目の記事の担当は nanTosaka2 さんと ark_golgo さんです。