栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python实现疫情通定时自动填写功能(附代码)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python实现疫情通定时自动填写功能(附代码)

自疫情始,学校就要求学生每天在学校内系统填写个人每日疫情相关情况,称为疫情通。

但是,由于个人原因,出现了下图情况。

记性太差,人又懒,于是决定用Python实现自动化定时任务。

1、核心模块

打开IEChrome。

打开网页按下F12拿到请求头和请求体。

(假装此处有图片)

Pycharm启动!

根据拿到的请求头和请求体,完成核心代码编写。

url = "https://xxcapp.xidian.edu.cn/ncov/wap/default/save"
headers = {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
      'Accept': 'application/json, text/javascript, **; q=0.01',
      'Accept-Language': 'zh-cn',
      'Accept-Encoding': 'gzip, deflate, br',
      'Host': 'xxcapp.xidian.edu.cn',
      'Origin': 'https://xxcapp.xidian.edu.cn',
      'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/605.1.15 (KHTML, like Gecko) '
      'Version/13.1 Safari/605.1.15',
      'Connection': 'keep-alive',
      'Referer': 'https://xxcapp.xidian.edu.cn/ncov/wap/default/index',
      'Content-Length': '2314',
      # cookie是身份标识
      'cookie': 'Hm_lpvt_48b682d5d22a90111e44886b972e3268=1590108209; ' # Hm_lpvt_xxxxxxx 为当前时间戳(秒)
      # Hm_lvt_xxx 为一串时间戳。最近的一次访问时间戳追加在后面,最多保留4个时间戳。可以通过关闭浏览器然后再访问相同页面查看其cookie值来验证。
    'Hm_lvt_48b682a90111e46b9d4885d2272e3268=1590108209; UUkey=99cf86f295b522e264680402bf6b221e; '
    'Uqn3iPIDZBpD3wJU=vqtbQwSD1sjDM; eai-sess=prshbd3vo96po8i27a4mod1i67',
      'X-Requested-With': 'XMLHttpRequest',
      }
data = {
  'uid': '123671', 'date': str(datetime.date.today() - datetime.timedelta(days=1)).replace("-", ""),
  'tw': '3', # 体温:第三项,36.5-36.9
  'sfcxtz': '0', # 是否出现
  'sfyyjc': '0', # 是否医院检查
  'jcjgqr': '0', # 检查结果确认
  'sfjcbh': '0', # 是否接触病患
  'sfcxzysx': '0', # 是否出现
  'address': '', 'area': '', 'province': '', # 地址
  'city': '', # 城市
  # 伽利略定位系统详情
  'geo_api_info': '{"type":"complete","position":{"P":11.203296169705,"O":11.667691514757,"lng":11.667692,'
   '"lat":11.203296},"location_type":"html5","message":"Get ipLocation failed.Get geolocation '
   'success.Convert Success.Get address success.","accuracy":15,"isConverted":true,"status":1,'
   '"addressComponent":{"citycode":"0001","adcode":"123456","businessAreas":[],'
   '"neighborhoodType":"","neighborhood":"","building":"","buildingType":"","street":"",'
   '"streetNumber":"","province":"","city":"","district":"","township":""},'
   '"formattedAddress":"","roads":[],"crosses":[],"pois":[],'
   '"info":"SUCCESS"}',
  'created': str(int(time.time())), # 创建时间
  'sfzx': '0', # 是否在校 否
  'sfjcwhry': '0', # 是否接触武汉人员 否
  'sfcyglq': '0', # 是否处于隔离期 否
  'sftjwh': '0', # 是否途径武汉 否
  'sftjhb': '0', # 是否途径湖北 否
  'fjsj': '0',
  'sfjchbry': '0', # 是否接触湖北人员 否
  'sfsfbh': '0', # 是否
  'jhfjsftjwh': '0', # *****是否途径武汉 否
  'jhfjsftjhb': '0', # *****是否途径湖北 否
  'szsqsfybl': '0',
  'sfygtjzzfj': '0', # 是否
  'sfjcjwry': '0', # 是否接触境外人员 否
  'id': '4393912',
  'ismoved': '0', # 与上次地点是否有不同
}
sendEmail(eval(requests.post(url=url, data=data, headers=headers).text)['m'])

总结

到此这篇关于Python实现疫情通定时自动填写功能(附代码)的文章就介绍到这了,更多相关Python疫情通自动填写内容请搜索考高分网以前的文章或继续浏览下面的相关文章希望大家以后多多支持考高分网!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/19210.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号