
1.安装python
可以直接下载Python主页,需要路径环境配置,最好下载简单的编辑器。也可以在anaconda平台环境下下载配置,平台自动捆绑Spyder。本文操作使用的是anaconda安装的Python3.7.anaconda是开源的包、环境管理器,可以在同一个机器上安装不同版本的包和依赖,可以在不同的环境中切换。
2.代码示例
import requests
def school_clock(inputAccount , inputPassword , firstLocation , lastLocation ):
################# 第一个界面:进入登陆界面 ######################
myHeaders1 = {
'User-Agent': 'Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 '
#该页面只允许手机端登录
}
url = 'https://nco.zjgsu.edu.cn/genqrcode/2019032'
r1 = requests.post(url, headers=myHeaders1)
################# 第一个界面:进入登陆界面后的登录操作 ######################
myHeaders2 = {
'Upgrade-Insecure-Requests': '1',
'Content-Type': 'application/x-www-form-urlencoded',
'Cookie': 'zjgsusessionsid=s%3AGSYaaVwF_2pedsizsHYTYSY64hVl3vL_.NMnLf1bV1PJSAS%2FeZXUkcyPkFpBq%2BcMVQYq4XPHXAAU; _ncov_uuid=a59e0ac8-da06-4fb1-83d8-000976c317a9; _ncov_username=这里直接填入账号; _ncov_psswd=这里直接填入密码',
'User-Agent': 'Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 '
}
myHeaders2['Cookie'] = r1.headers['set-cookie']
payload = {
'name': ' ',
'psswd': ' '
}
payload['name'] = inputAccount
payload['psswd'] = inputPassword
url = 'https://nco.zjgsu.edu.cn/login'
r2=requests.post(url, data=payload, headers=myHeaders2)#登录操作
################# 第二个界面:填写报送信息 ######################
myHeaders3 = {
'Upgrade-Insecure-Requests': '1',
'Content-Type': 'application/x-www-form-urlencoded',
'Cookie': 'zjgsusessionsid=s%3AOIlBmUda3tnT-fWds6uWEKKADgTt3IAd.zQ1LcseRzDNFPv5EU1AlkyyWeSMz6424x6HK8cbov8Q; _ncov_uuid=03d31c9b-696f-4429-a0ca-6e2b7a2e10ce; _ncov_username=这里也是直接输入账号; _ncov_psswd=这里也是直接输入密码',
'User-Agent': 'Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 '
}
myHeaders3['Cookie'] = r2.headers['set-cookie']
payload2 = {
'uuid': 'a59e0ac8-da06-4fb1-83d8-000976c317a9',
'locationInfo': '%E6%B5%99%E6%B1%9F%E7%9C%81%E6%9D%AD%E5%B7%9E%E5%B8%82',
'currentResd': '%E6%B5%99%E6%B1%9F%E7%9C%81%E6%B8%A9%E5%B7%9E%E5%B8%82%E9%BE%99%E6%B8%AF%E5%B8%82%E4%B8%B4%E6%B8%AF%E8%B7%AF862%E5%8F%B7',
'fromHbToZjDate': '',
'fromHbToZj': 'C',
'fromWtToHzDate': '',
'fromWtToHz': 'B',
'meetDate': '',
'meetCase': 'C',
'travelDate': '',
'travelCase': 'D',
'medObsvReason': '',
'medObsv': 'B',
'belowCaseDesc': '',
'belowCase': 'D',
'temperature': '',
'notApplyReason': '',
'hzQRCode': 'A',
'specialDesc': ''
}
payload2['locationInfo'] = firstLocation
payload2['currentResd'] = lastLocation
url = 'https://nco.zjgsu.edu.cn/'
r3 = requests.post(url, data=payload2, headers=myHeaders2)
print(r3.text)
##################调用上述打卡函数######################
school_clock(inputAccount = '这里直接输入账号' ,inputPassword = '这里直接输入密码' ,firstLocation = '这里输入省市地区,如江苏省徐州市' ,lastLocation = '这里输入详细地址,如江苏省徐州市云龙区XXX大学' )
3.附加说明
(1)以上代码使用函数实现。
(2)以上代码中有8个数据需要用户自己输入数据的存储也可以使用txt文件,使用mysql实现数据库,这里由于数据有限而直接分配。
(3)注意:不同学校提交的打卡页面可能略有不同,需要用户自己修改post参数,这类网页只能通过手机端进入,若要查看这类网页的开发者模式,必须要带上旧版手机浏览器的User-Agent(eg:”Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus S Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1”)
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试



