|
|
@ -1,7 +1,7 @@ |
|
|
|
import requests |
|
|
|
import re |
|
|
|
import time |
|
|
|
def submit(payload) : |
|
|
|
def submit(payload,pid) : |
|
|
|
|
|
|
|
url = "http://jf.shuishan.net.cn/api/submission" |
|
|
|
payload = payload |
|
|
@ -15,17 +15,21 @@ def submit(payload) : |
|
|
|
'Chrome/88.0.4324.104 Safari/537.36', |
|
|
|
'Content-Type': 'application/json;charset=UTF-8', |
|
|
|
'Origin': 'http://jf.shuishan.net.cn', |
|
|
|
'Referer': 'http://jf.shuishan.net.cn/problem/1-1', |
|
|
|
'Referer': 'http://jf.shuishan.net.cn/problem/1-'+pid, |
|
|
|
'Accept-Encoding': 'gzip, deflate', |
|
|
|
'Accept-Language': 'zh-CN,zh;q=0.9', |
|
|
|
'Cookie': '_ga=GA1.3.1580759526.1611565238; _gid=GA1.3.412268444.1611565238; csrftoken=6eM4EeOzqLJFt6xfkbSMQD1e89qF28Lgg5aPIbB1k7Hvu6UFVzzb2d1u5lQG37p6; sessionid=0e47tlihcjyqr3oynpx5pq9xpf7jtqml; _gat=1; sessionid=0e47tlihcjyqr3oynpx5pq9xpf7jtqml' |
|
|
|
} |
|
|
|
|
|
|
|
response = requests.request("POST", url, headers=headers, data=payload) |
|
|
|
response = requests.request("POST", url, headers=headers, data=payload.encode('utf-8').decode('latin1')) |
|
|
|
|
|
|
|
|
|
|
|
## print(response.text) |
|
|
|
|
|
|
|
res = response.text |
|
|
|
with open('wulin3.txt', 'w', encoding='utf-8', newline='') as f: |
|
|
|
f.write(res) |
|
|
|
f.close() |
|
|
|
|
|
|
|
submit_id = re.findall(r'"submission_id": "([^"]+)"',res) |
|
|
|
submit_id = submit_id[0] |
|
|
@ -45,7 +49,7 @@ def submit(payload) : |
|
|
|
'X-CSRFToken': '6eM4EeOzqLJFt6xfkbSMQD1e89qF28Lgg5aPIbB1k7Hvu6UFVzzb2d1u5lQG37p6', |
|
|
|
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36', |
|
|
|
'Content-Type': 'application/json;charset=utf-8', |
|
|
|
'Referer': 'http://jf.shuishan.net.cn/problem/1-1', |
|
|
|
'Referer': 'http://jf.shuishan.net.cn/problem/1-'+pid, |
|
|
|
'Accept-Encoding': 'gzip, deflate', |
|
|
|
'Accept-Language': 'zh-CN,zh;q=0.9', |
|
|
|
'Cookie': '_ga=GA1.3.1580759526.1611565238; _gid=GA1.3.412268444.1611565238; csrftoken=6eM4EeOzqLJFt6xfkbSMQD1e89qF28Lgg5aPIbB1k7Hvu6UFVzzb2d1u5lQG37p6; sessionid=0e47tlihcjyqr3oynpx5pq9xpf7jtqml; _gat=1; sessionid=0e47tlihcjyqr3oynpx5pq9xpf7jtqml' |
|
|
@ -53,12 +57,16 @@ def submit(payload) : |
|
|
|
#等待judgeserver出结果 |
|
|
|
time.sleep(0.5) |
|
|
|
response = requests.request("GET", url, headers=headers, data=payload) |
|
|
|
|
|
|
|
print(response.text) |
|
|
|
# print(response.text) |
|
|
|
res = response.text |
|
|
|
with open('wulin5.txt', 'w', encoding='utf-8', newline='') as f: |
|
|
|
f.write(res) |
|
|
|
f.close() |
|
|
|
result_code = re.findall(r'"result": ([^"]+),',res) |
|
|
|
error_code = re.findall(r'"error": ([^"]+),',res) |
|
|
|
result_code = result_code[1] |
|
|
|
result_code_compile = result_code[0] |
|
|
|
if (len(result_code) >= 2) : |
|
|
|
result_code = result_code[1] |
|
|
|
error_code = error_code[0] |
|
|
|
print(result_code) |
|
|
|
print(error_code) |
|
|
@ -67,6 +75,13 @@ def submit(payload) : |
|
|
|
print("ERROR_CODE") |
|
|
|
return "ERROR_CODE" |
|
|
|
|
|
|
|
if (result_code_compile == '-2') : |
|
|
|
print("COMPILE_ERROR") |
|
|
|
return "COMPILE_ERROR" |
|
|
|
|
|
|
|
if(error_code != '0' and error_code != "null"): |
|
|
|
print("ERROR_CODE") |
|
|
|
return "ERROR_CODE" |
|
|
|
elif(result_code == '0'): |
|
|
|
print("SUCCESS") |
|
|
|
return "SUCCESS" |
|
|
@ -99,14 +114,25 @@ def submit_handler(code, problem_id, language_type): |
|
|
|
file = open('data.c', mode='r', encoding='utf-8', newline='') |
|
|
|
code = file.readlines() |
|
|
|
file.close() |
|
|
|
code = ''.join([i.replace(' ', r'\t').replace('"', r'\"').rstrip() + r'\n' for i in code]) |
|
|
|
code = ''.join([i.replace("\t"," ").replace('\\', '\\\\').replace('"', r'\"').rstrip() + r'\n' for i in code]) |
|
|
|
## print(code) |
|
|
|
# payload="{\"problem_id\":1,\"language\":\"C\",\"code\":\"# include <stdio.h>\\nint main()\\n{\\n\\tint a;\\n\\treturn 0;\\n}\"}" |
|
|
|
# print(payload) |
|
|
|
payload = "{\"problem_id\":" + problem_id + ",\"language\":\"" + language_type + "\",\"code\":\"" + code + "\"}" |
|
|
|
## print(payload) |
|
|
|
with open('wulin4.txt', 'w', encoding='utf-8', newline='') as f: |
|
|
|
f.write(payload) |
|
|
|
f.close() |
|
|
|
|
|
|
|
results = submit(payload) |
|
|
|
# with open('wulin4.txt', 'r', encoding='utf-8', newline='') as f: |
|
|
|
# payload=f.read() |
|
|
|
#f.close() |
|
|
|
#payload = payload.replace("\t","").replace(" ","") |
|
|
|
#with open('wulin4.txt', 'w', encoding='utf-8', newline='') as f: |
|
|
|
# f.write(payload) |
|
|
|
#f.close() |
|
|
|
|
|
|
|
results = submit(payload,problem_id) |
|
|
|
return results |
|
|
|
|
|
|
|
# 输入文件名,题号,语言种类 |
|
|
|