无任何技术含量,闲的蛋疼,刷一波伤害?
将某人的蘑菇钉日报、周报、月报等复制到自己的账号上。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
import requests
import json

class MGD:
week ='week'
month = 'month'
day = 'day'
planId =None
token = None
session = requests.session()
headers = {
'Content-type': 'application/json; charset=UTF-8',
'User-Agent': 'Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045521 Mobile Safari/537.36 MMWEBID/2585 MicroMessenger/8.0.1.1841(0x2800015D) Process/tools WeChat/arm64 Weixin Netrptype/WIFI Language/zh_CN ABI/arm64',
}
pubdata = {
"reportType": 'day',
"currPage": '1',
"pageSize": "200",
"planId": planId
}
paper_data = {
"reportType": "",
"address": "",
"latitude": "0.0",
"planId": planId,
"yearmonth": "",
"title": '',
"content": '',
"longitude": "0.0"
}
def get_pandId(self):
self.headers['Authorization'] = self.token
self.headers['roleKey'] = 'student'
data = {
'state':''
}
rep = self.session.post(url='https://api.moguding.net:9000/practice/plan/v1/getPlanByStu',data=self.dispreqest(data),headers = self.headers)
rep =self.dispresponse(rep)
if rep['code'] == 200:
return rep['data'][0]['planId']
else:
print(rep['msg']+"---get_planId()")
return None

def dispreqest(self,datapack):
return json.dumps(datapack).encode('utf-8')
def dispresponse(self,rep):
return json.loads(rep.content.decode('utf-8'))
def disppaper(self,paper):
paper = paper.replace('\n','')
paper = paper.replace('\r','')
return paper
def login(self,phone,pwd):
url = "https://api.moguding.net:9000/session/user/v1/login"
data = {
"phone": phone,
"password": pwd,
"loginType": "android"
}
rep = self.session.post(url,data=self.dispreqest(data),headers =self.headers)
rep = self.dispresponse(rep)
if rep['code'] == 500:
print(rep['msg']+"---login()")
exit(0xffff)
elif rep['code'] == 200:
self.token = rep['data']['token']
self.planId = self.get_pandId()



def get_paper_list(self,rptype='day'):
self.headers['Authorization'] = self.token
self.headers['roleKey'] = 'student'
self.pubdata['reportType'] = rptype
rep = self.session.post(url='https://api.moguding.net:9000/practice/paper/v1/listByStu',
data=self.dispreqest(self.pubdata), headers=self.headers)
# if rep['code'] !=200:
# print(rep['msg']+"-----get_paper_list()")
# exit(0)
return self.dispresponse(rep)['data']

def paper(self,dailies,start=0,end=0xffff,reportType='day'):
self.headers['Authorization'] = self.token
self.headers['roleKey'] = 'student'
self.paper_data['reportType']=reportType
self.paper_data['planId'] = self.planId
l = len(dailies)
if end== 0xffff or end> l:
end = l

for index in range(start,end):
daily = dailies[l-1-index]
if reportType == 'week':
self.paper_data['weeks'] = daily['weeks']
self.paper_data['startTime'] = daily['startTime']
self.paper_data['endTime'] = daily['endTime']
if reportType == 'month':
self.paper_data['yearmonth'] = daily['yearmonth']
self.paper_data['title'] = daily['title']
self.paper_data['content']= daily['content']
rep=self.session.post('https://api.moguding.net:9000/practice/paper/v1/save',data=self.dispreqest(self.paper_data),headers=self.headers)
rep = self.dispresponse(rep)
if rep['code'] == 200:
print("他的第"+str(index+1)+"条 "+reportType+"---标题:"+dailies[l-1-index]['title']+"----"+"已复制成功")
else:
print(rep['msg']+"------paper()")


if __name__ == '__main__':

mgd = MGD()
mgd.login('账号','密码')

#
# reportType:
# 可选参数 mgd.day, mgd.week, mgd.month
# mgd.day : 复制日报
# mgd.week 复制 周报
# mgd. month 复制 月报
#
dailies = mgd.get_paper_list(mgd.month)
#
#
#
umgd =MGD()
umgd.login('账号','密码')
#
#
#
# dailies 固定参数,
# start 从他的第几条复制
# end 复制到他的第几条
# reportType = 和上方的reportType相同
umgd.paper(dailies,0,0xffff,mgd.month)
#
#例如 从他的第 1 条 日报开始复制,复制到 30条: 如果 end = 0xffff ,则复制到最后
# umgd.paper(dailies,0,30,mgd.day)
#

评论