Metadata-Version: 2.1
Name: BUCTOJ
Version: 0.0.7
Summary: 用Python玩转北化OJ平台
Home-page: https://github.com/LetMeFly666/BUCTOJ
Author: LetMeFly
Author-email: Tisfy@qq.com
License: Apache License
Platform: all
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Natural Language :: Chinese (Simplified)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Software Development :: Libraries
Requires-Dist: requests (>=1.0.0)
Requires-Dist: lxml (>=2.0)
Requires-Dist: beautifulsoup4 (>=4.0.1)

BUCTOJ 用Python玩转北化OJ平台
========================================

将 `BUCT-OJ <http://182.92.175.181/>`_ 的一些功能封装成包，从而实现通过脚本提交代码等。

主要功能
=============

模拟登录：
--------------------------


::

    from BUCTOJ import login
    cookies = login(用户名, 密码)


使用cookies中的session即可以账号身份进行操作

若账号密码错误，则返回cookie不可用

提交代码：
--------------------------


::

    from BUCTOJ import submit
    submit(比赛的cid，要提交问题的pid，你的cookie，要提交的代码)



上述方式会使用C++语言进行提交(目前仅支持C++)

进入比赛的某道题目后，地址栏的url中会有cid和pid。

例如 `Contest2347` 的 `A` 题，url为 `http://182.92.175.181/problem.php?cid=2347&pid=0` ，因此此题目的cid为2374，pid为0

cookie是登录功能所获得的cookie。

自动完成一个比赛
--------------------------------

::

    from BUCTOJ import finish1contest
    finish1contest(比赛cid, 你的用户名, 你的密码, 管理员用户名, 管理员密码)

**前提**：

1. 拥有一个管理员账号

2. 每道题都有用C++通过者

**功能**：

若满足以上两个条件，则此函数具有以下功能：

1. 每隔大约15s通过一道题

2. 查重率为0


若某次比赛中一些题目无人用C++通过，则程序会跳过此题继续提交下一题


