diff --git a/README.md b/README.md index 096837d..be2310a 100644 --- a/README.md +++ b/README.md @@ -20,22 +20,30 @@ QDUOJ的开发以及众多OJ的题库,使得我们自动化添加题目更加 * MongoDB 客户端工具-推荐使用RoBo 3T # 准备 -* 解压获取已准备好的BZOJ +## 解压获取已准备好的BZOJ 你需要将BZOJ目录下的压缩文件解压,解压至你的web服务器目录下。 -* 安装scrapy +## 安装scrapy 具体安装文档请见docs。 -* 启动爬虫并检查数据库是否存在数据 -1. 修改爬虫配置: +## 启动爬虫并检查数据库是否存在数据 +* 修改爬虫配置并执行爬虫: - url在bzoj.py - - MongoDB数据配置在settings.py +1. url在bzoj.py +2. MongoDB数据配置在settings.py -2. 执行爬虫:scrapy crawl bzoj +* 执行爬虫:scrapy crawl bzoj + +## 图片位置 +在本项目中已经提供BZOJ,所以您可以直接在BZOJ解压包中看到JudgeOnline找到upload以及images两个图片目录,你只需要将这个两个目录复制到已经部署好的qduoj的 public目录下。 +![dir][2] + +## 安装自动加题所需要的库 +1. webdriver +2. selenium +3. pymongo * 执行自动加题 > 也需要修改您的url以及mongoDB配置,以及OJ的用户名、密码。 @@ -44,19 +52,21 @@ QDUOJ的开发以及众多OJ的题库,使得我们自动化添加题目更加 2. MongoDB配置在settings.py 3. OJ用户名以及密码在config.py -执行:python add_problem.py - -# 图片位置 -在本项目中已经提供BZOJ,所以您可以直接在BZOJ解压包中看到JudgeOnline找到upload以及images两个图片目录,你只需要将这个两个目录复制到已经部署好的qduoj的 public目录下。 -![dir][2] +* 执行:python add_problem.py # 某些bug -* 因为BZOJ数据的问题,某一题如果有两张或者以上的图片,则可能显示不全。 -* 因为BZOJ数据问题,可能导致添加题目突然中止,你可能需要执行删除数据库文档的命令 -> 在delete.py中,你需要修改count的值以及for循环的值,删除已经添加得文档。然后重新执行:python add_problem.py即可再次添加题目。 +* 因为BZOJ数据问题,可能导致添加题目突然中止,你可能需要执行删除数据库文档的命令,然后重新执行:python add_problem.py即可再次添加题目。 +> 在delete.py中,你需要修改count的值以及for循环的值,删除已经添加得文档。示例如下: -![oj][1] + # 删除编号自1200开始,至1245的所有文档数据 + for i in range(0, 46): + count = 1200 + count = count+i + print(count) + db.problem.delete_one({"problem_no": str(count)}) +![oj][1] + [1]: https://s1.ax2x.com/2018/06/02/71uIJ.png [2]: https://finen-1251602255.cos.ap-shanghai.myqcloud.com/images/github/autoaddproblem/dir.png \ No newline at end of file