gxmarkingcloudInf.py 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. """
  2. 云阅卷接口
  3. """
  4. import config
  5. import requests
  6. import logger
  7. import os
  8. class gxmarkingcloudInf():
  9. def __init__(self):
  10. self.session = requests.session()
  11. self.header={
  12. "auth-info": "loginname=" + config.user_name + ";password=" + config.password,
  13. }
  14. self.login()
  15. def login(self):
  16. url=config.domain+"login"
  17. data={
  18. "showType":"admin-login",
  19. "loginName":config.user_name,
  20. "password":config.password
  21. }
  22. result=self.session.post(url,data=data)
  23. logger.info("login server"+str(result.status_code))
  24. def selectExam(self):
  25. url=config.domain+"admin/exam/view/"+config.examId+"/info"
  26. logger.info("select exam " + url)
  27. result=self.session.get(url)
  28. logger.info("select exam" + str(result.status_code))
  29. def importStudent(self):
  30. url=config.domain+"admin/exam-param/student/import"
  31. upfile = {'file': open(str(config.examId)+os.sep+"student.xlsx", 'rb')}
  32. result=self.session.post(url,files=upfile)
  33. logger.info("upload student data" + str(result.status_code))
  34. def importObjectivePaper(self):
  35. url=config.domain+"admin/exam-param/paper/import"
  36. data={
  37. "objective":True
  38. }
  39. upfile = {'file': open(str(config.examId)+os.sep+"object.xlsx", 'rb')}
  40. result=self.session.post(url, data=data,files=upfile)
  41. logger.info("upload objective data" + str(result.status_code))
  42. def importSubjectivePaper(self):
  43. url = config.domain + "admin/exam-param/paper/import"
  44. data = {
  45. "objective": False
  46. }
  47. upfile = {'file': open(str(config.examId)+os.sep+"subjective.xlsx", 'rb')}
  48. result=self.session.post(url, data=data, files=upfile)
  49. logger.info("upload subjective data" + str(result.status_code))
  50. def queryStudent(self,examnumber):
  51. url=config.domain+"api/student/check"
  52. examstudentdata={
  53. "examId":config.examId,
  54. "examNumber":examnumber
  55. }
  56. result=self.session.post(url, json=examstudentdata,headers=self.header)
  57. return result.json()
  58. def scanstudent(self,studentdata):
  59. url=config.domain+"api/scan/student/"+config.examId
  60. result=self.session.post(url,json=[studentdata],headers=self.header)
  61. if result.status_code==200:
  62. logger.info(str(studentdata["examNumber"])+"upload success")
  63. else:
  64. logger.error(str(studentdata["examNumber"])+"upload false")
  65. def batchcreateMarker(self,count,subject_code):
  66. url=config.domain+"admin/exam-param/marker/batch-create"
  67. data={
  68. "subjectCode":subject_code,
  69. "common":False,
  70. "count":count,
  71. "password":"1234"
  72. }
  73. result=self.session.post(url,data=data,headers=self.header)
  74. if result.status_code == 200:
  75. logger.info(str(subject_code) + "batch create marker success")
  76. else:
  77. logger.error(str(subject_code) + "batch create marker false")
  78. #
  79. # inf=gxmarkingcloudInf()
  80. # inf.scanstudent("19000001")