# Python_everyreport **Repository Path**: time--chicken/python_everyreport ## Basic Information - **Project Name**: Python_everyreport - **Description**: 基于云服务器开发的每日一报脚本 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-05-23 - **Last Updated**: 2022-04-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 描述: > 1. 程序目的用于繁杂的每日一报,别无它用,可根据需求自定义批量功能。 > 2. 为工作繁忙的大佬而开发,如果宅在家没事做,还是老老实实填吧。 > 3. 体温因时而异,采用了产生的随机数,默认35.8 - 36.8。 > 4. 本文件代码用于百度云函数,其它云服务自行了解。 ## 使用说明: > 1. 自行选择开通云函数服务提供商,比如[百度云](https://cloud.baidu.com/product/cfc.html),[腾讯云](https://cloud.tencent.com/product/scf),[阿里云](https://www.aliyun.com/product/fc/),等等... > 2. 若使用[WxPusher](https://wxpusher.dingliqc.com/docs/#/),请自行前往获取appToken填入`main.py`(line : 11)文件中,否则忽略,但忽略时云函数运行出错则不能及时**通知**,**请根据具体说明文档修改`server_push`函数**。 > 3. 自行了解云函数的使用教程,上传Python_everyday文件夹的zip包即可,后修改`main.py`中`namelist`(line : 16)列表名单。 > 4. 若需要控制温度范围,请修改`main.py`中`TEMP_MIN`和`TEMP_MAX`的值(line : 74, 75)。 > 5. 因为可填报时间是9点至21点,故触发方式为**定时触发**。处理程序`main.main`就是函数中 `filename.handler-method` 的值,例如:填写 `index.handler`,调用 `index.py `中定义的 `handler()`方法,以上说明仅限百度云函数,其它云函数服务自行了解,恕不赘述。 > 6. 可使用`main.py`中`login_student_test()`、`getDay_test()`进行测试。 > 7. 具体自定义的功能,请自行参考代码。 ## `main.py`中name_list的说明 > ### 默认值 > > > ```python > > { > > # putDay 接口的信息 > > 'uid': None, # 学生ID > > 'am': "36.5", # 上午体温,保留一位小数 > > 'pm': "36.5", # 下午体温,保留一位小数 > > 'bex': "2", # 是否咳嗽 > > 'panting': "2", # 是否气促 > > 'other': "", # 其它症状 > > 'campus': "南校区", # 现住校区,可选参数为:南校区、北校区、海珠校区、滨江校区 > > 'plan': "0", # 近一周是否计划去高风险地区 > > 'planaddress': "", # 如果计划去高风险地区的话,请填写,并将plan键置1 > > > > 'nowaddress': "广州市内", # 所在地区,可选参数为:广州市内、广东省广州市外、广东省外、境外 > > 'vacate': "2", # 是否事假 > > 'vacate1': "2", # 是否病假 > > 'fever': "2", # 是否发烧 > > 'feverinfo': "undefined", # 发热就医情况switch(fever){case 1:"已就医"||"未就医" break; case 2:"undefined"} > > 'graduation': "2", # 是否毕业 > > 'stay': "1", # 是否住宿 > > 'vaccine': "undefined", # 是否已接种疫苗第一剂 > > 'vaccine1': "undefined", # 是否已接种疫苗第二剂 > > > > # 最近更新的接口 > > 'jiere': "符合条件但不接种", # 选择未接种疫苗的原因,符合条件但不接种、有禁忌症不适宜接种、超龄人员[已经接种第一、二剂的话留空就好] > > 'jie': "3", # 疫苗接种情况,1已接种1剂、2已接种2剂、3未接种疫苗 > > 'baiyun': "2", # 是否在白云区参加疫苗接种,并且实名注册”平安白云“形成电子凭证: > > 'jinqi': "2", # 近期是否收到属地通知进行核酸检测 > > 'jieguo': "undefined", # 未知 > > 'jiancedate': "undefined", # 未知 > > 'jiedao': "无", # 涉及重点区域街道 > > 'jkcode': "绿码", # 今日健康码状态 > > 'jiang': "未曾出现黄码", # 选择绿码后出现的复选框 > > } > > ``` > > ### 说明 > > 1. 未读懂默认值说明请自行了解**json语法**。 > > 2. 请严格按照上面的**默认值注释**说明来填写main.py中name_list的信息。除了特殊说明的可选参数,大部分都是"2"或者"1"的字符串[2:否,1:是],"undefined"的好像就是丢弃的了,在此特别吐槽学校服务外包商的命名规则。**期间需要了解python语法,要是填啥奇奇怪怪信息,自行向负责人澄清。** > > 3. **不懂修改就自己去学 或者 去找懂Python的大佬。** ## 警告: 使用本代码,代表您已阅读并同意以下条件。 > 1. 疫情当前,请保护好自己,尽自己的能力汇报个人信息,更不能忽视每日一报的重要性。 > 2. 如发现每日自动一报的内容与个人真实情况差异巨大,将立即停止该项目,请悉知。 > 4. 若有更新恕不另行通知。 > 4. 自行承担误操作带来的后果。 > 5. 项目仅用于学习,严禁商用,否则将停止该项目。 ### 最后祝愿疫情能够早日结束,祝大家工作顺利······ ### 更新日期:2022.4.14 ---- By TimeChicken ## 更新日志 ### 4.0.0 (2022-4-13) > * 增加Debug调试变量`IS_DEBUG` > * 增加cloud与local环境控制变量`RUNTIME_ENV_MODE` > * 增加requests与response的Debug输出 > * 优化实现逻辑 > * 优化容错机制 > * 优化请求逻辑`Host`,优化跨域请求Bug > * 更新提交data字段 > * 懒得更新readme.md中的默认值,详情请参考代码 ### 3.1.0 (2021-7-11) 21: 00 > * 取消上下午温度的填写的模块,文档啥的懒得改了,反正没啥影响 > * 因为小程序的页面内容大改,所以更新提交的信息 > * 多一事不如少一事,怎样简单就怎样填吧,一劳永逸嘛 ### 3.0.1 (2021-6-17) 21: 40 > * 由于push plus停止服务,推送功能已切换成[WxPusher](https://wxpusher.dingliqc.com/docs/#/)。 > * 由于每日一报小程序数据库问题所导致的不能重复每日一报,现已修复。 ### 3.0 (2021-6-14)凌晨3: 30 > * 一方面由于最近疫情突发,另一方面[ThinkPHP](http://www.thinkphp.cn/)(每日一报小程序API提供商)升级,导致以前的代码完全不能用了,又由于小程序API信息更换频繁,所以把所有的代码整合在一个`main.py`文件中。如果来不及修改及更新,可自行在代码中根据需要修改。另外听说最近学校有红码出没,这里衷心希望大家不要乱跑,为了大家,也为了自己······谢谢。 > * 修改部分说明内容 ### 1.4.2 (2021-5-23) > > * 更新汇报的数据 ### 1.4.1 (2021-4-22) > > * 新的url换成了旧的url > > * 跟新json格式的数据封装,这里特别批评 ### 1.4 (2021-4-13) > * **重构代码(耗时较长)** > * **修复上一版本中遗留的大量BUG** > * 整合文件后剩下“main.py”和"reportTool.py" > * 预留测试函数 > * 修改部分说明内容 ### 1.3 (2021-4-12) > * 为"putDay1" 添加新接口信息,旧接口依旧可以使用**(是否钓鱼未知)** > * 修改函数"putDay"和"putDay1"的接口信息 > * 调整`main.py`中name_list传入的接口信息 > * 下调温度范围,从36.5 - 37.0下调至35.8 - 36.8 > * 修改文档说明,增加了对`main.py`中name_list 的说明部分 ### 1.2.3 (2021-4-7) > > * 更新每日一报函数的API,将putDayNew改为putDay > > * 将`putDayNew.py`更名为`putDay.py` ### 1.2.2 (2021-3-7) > > * 增加未设置token出现错误时的输出提示 > > * 修改使用说明条例,为了照顾懒于百度查资料的家伙 ### 1.2.1 (2021-3-3) >> * 修复`main.py`中`railyReport()`传参问题 >> * 增加登陆失败的错误捕捉机制 >> * 优化push plus错误推送内容格式 >> * 修复已知bug ### 1.2 (2021-3-2) > * 优化每日一报校区信息填写问题,增加各校区选择参数 > * 优化`railyReport()`接口问题 > * 原`student.py`模块更名为`“login.py”` > * 原`student.py`中`everyday_report()`更名为`main()` > * 修改部分说明条例 ### 1.1 (2021-2-3) > * 增加了[pushplus](https://pushplus.hxtrip.com)平台的异常推送推送功能,防止云函数出现问题。此功能参考了师兄提供的思路,在此特别感谢。 > * 修改部分说明条例 ### 1.0 (2021-2-1) > * 更新接口数据的封装格式。 > * 添加后台记录功能,防止代码滥用