完整代码就不po了哈…
服务器装的centos7(不要问我为什么不是Ubuntu…),不过其实Linux彼此在平时的使用中也都是大同小异。
源码文件还是老python了,主要就是在服务器设置定时运行。俺们这个check烦人的很,一天三次。
主要是crontab这个玩意格式两天不写就忘
crontab -e # 先打开crontab
和vim一样,i启动编辑模式,esc和:wq保存退出
格式如下:
5个时间参数+command
5个参数自左向右:分、时、天、月、周
这里command注意要加上绝对路径,比如python,即便之前可以直接调用也要加上绝对路径。随便举个例子:
0 8 * * * /usr/bin/python /usr/Demos/Daycheck/xxx.py
用python3每天上午8点00分执行xxx.py文件
不全的伪代码:
# -*- coding: UTF-8 -*-
import json
import requests
if __name__ == '__main__':
data_raw = {
"sfzx": "1",
"tw": "1",
"area": "\a",
"city": "",
"province": "",
"address": "",
"geo_api_info": "",
"sfcyglq": "0",
"sfyzz": "0",
"qtqk": "",
"askforleave": "0"
}
# Login
conn = requests.Session()
result = conn.post(
url="https://XXXXXXXXXXXXX",
data={'username': uname, 'password': upswd}
)
if "账号或密码错误" in result.text:
print('Failed to login.', result.status_code)
conn.close()
exit()
# Post
result = conn.post(
url="https:XXXXXXXXXXXXX",
data=data_raw
)
if result.status_code != 200:
print("Network Error.", result.status_code)
conn.close()
exit()
# Result
rjson = json.loads(result.text)
print(rjson['m'])
conn.c
听说后台其实能看出来是不是自动填报的,等我考完试试着伪装一下iphone,顺便加上个Email通知功能,出现问题向我汇报,到时候大概率代码也要改一改。