基于Python实现签到脚本过程解析


Posted in Python onOctober 25, 2019

无聊刷日剧,看到签到断了好久,简单写了个脚本,通过模拟抓包的方式实现

1、先登录到字幕组网站获取token

2、用获取到的token登录到人人活动页面获取cookie

3、用获取到的cookie进行签到

import requests
import json
import time
def main():
 # 登录,获取用户信息
 info = json.loads(get_token())
 uid,token = info['data']['uid'],info['data']['token']
 # 登录到活动中心,获取cookie
 cookies = get_huodong(uid,token)
 # 签到
 while True:
 qiandao(cookies)
 time.sleep(10800)
def qiandao(cookies):
 headers["Cookie"] = 'PHPSESSID={}'.format(cookies)
 info_url = "http://h5.rrhuodong.com/index.php?g=api/mission&m=index&a=user_info"
 info = json.loads(get(info_url).text)['data']
 print("称昵:{}\n等级:{}\n人人钻:{}\n".format(info['nickname'],info['main_group_name'],info['point']))
 qiandao_login_url = "http://h5.rrhuodong.com/index.php?g=api/mission&m=clock&a=store&id=2"
 print("签到信息:{}".format(json.loads(get(qiandao_login_url).text)['info']))
def get_huodong(uid,token):
 huodong_login_url = "http://h5.rrhuodong.com/index.php?g=api/mission&m=index&a=login&uid={}&token={}".format(uid,token)
 return requests.utils.dict_from_cookiejar(get(huodong_login_url).cookies)['PHPSESSID']
def get_token():
 token_login_url = "http://a.zmzapi.com/index.php?g=api/public&m=v2&accesskey={}&client=2&a=login&account={}&password={}".format(accesskey,username,passwd)
 return get(token_login_url).text
def get(url):
 content = requests.get(url.format(username,passwd), headers=headers, verify=False, allow_redirects=False)
 return content
if __name__ == '__main__':
 # 浏览器头部
 headers = {
 "User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; MI 6 Build/9.0) AppleWebKit/533.1 (KHTML, like Gecko) Version/5.0 Mobile Safari/533.1"
 }
 # 账号、密码、accesskey需要自己抓包
 username = '账号'
 passwd = '密码'
 accesskey="xxx"
 main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中异常重试的解决方案详解
May 05 Python
Python logging管理不同级别log打印和存储实例
Jan 19 Python
用python处理图片之打开\显示\保存图像的方法
May 04 Python
python爬取足球直播吧五大联赛积分榜
Jun 13 Python
Python基于递归算法求最小公倍数和最大公约数示例
Jul 27 Python
python保存文件方法小结
Jul 27 Python
解决python xlrd无法读取excel文件的问题
Dec 25 Python
pandas读取CSV文件时查看修改各列的数据类型格式
Jul 07 Python
python用线性回归预测股票价格的实现代码
Sep 04 Python
Python matplotlib以日期为x轴作图代码实例
Nov 22 Python
python 实现图片上传接口开发 并生成可以访问的图片url
Dec 18 Python
Python TCPServer 多线程多客户端通信的实现
Dec 31 Python
python实现大学人员管理系统
Oct 25 #Python
Python队列、进程间通信、线程案例
Oct 25 #Python
python银行系统实现源码
Oct 25 #Python
python Event事件、进程池与线程池、协程解析
Oct 25 #Python
python实现简单银行管理系统
Oct 25 #Python
Python银行系统实战源码
Oct 25 #Python
python实现银行管理系统
Oct 25 #Python
You might like
浅析php适配器模式(Adapter)
2014/11/25 PHP
php的crc32函数使用时需要注意的问题(不然就是坑)
2015/04/21 PHP
Mac环境下php操作mysql数据库的方法分享
2015/05/11 PHP
twig模板常用语句实例小结
2016/02/04 PHP
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
PHP中一个有趣的preg_replace函数详解
2018/08/15 PHP
张孝祥JavaScript学习阶段性总结(2)--(X)HTML学习
2007/02/03 Javascript
动态刷新 dorado树的js代码
2009/06/12 Javascript
鼠标滚轮改变图片大小的示例代码
2013/11/20 Javascript
使用js实现的简单拖拽效果
2015/03/18 Javascript
javascript实现密码强度显示
2015/03/18 Javascript
点评js异步加载的4种方式
2015/12/22 Javascript
详解nodejs 文本操作模块-fs模块(二)
2016/12/22 NodeJs
Vue项目webpack打包部署到服务器的实例详解
2017/07/17 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
2017/07/22 jQuery
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
vue.js todolist实现代码
2017/10/29 Javascript
jquery学习笔记之无new构建详解
2017/12/07 jQuery
layui 监听表格复选框选中值的方法
2018/08/15 Javascript
详解node和ES6的模块导出与导入
2020/02/19 Javascript
python中WSGI是什么,Python应用WSGI详解
2017/11/24 Python
django允许外部访问的实例讲解
2018/05/14 Python
Python查找第n个子串的技巧分享
2018/06/27 Python
Python正则表达式指南 推荐
2018/10/09 Python
Python中format()格式输出全解
2019/04/12 Python
django框架模板中定义变量(set variable in django template)的方法分析
2019/06/24 Python
python调用Matplotlib绘制分布点图
2019/10/18 Python
python反转列表的三种方式解析
2019/11/08 Python
Python OpenCV视频截取并保存实现代码
2019/11/30 Python
如何在VSCode下使用Jupyter的教程详解
2020/07/13 Python
python如何停止递归
2020/09/09 Python
详解pandas apply 并行处理的几种方法
2021/02/24 Python
人事助理岗位职责
2013/11/18 职场文书
临床医学专业学生的自我评价分享
2013/11/21 职场文书
详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)
2021/07/01 HTML / CSS
CSS文本阴影 text-shadow 悬停效果详解
2022/05/25 HTML / CSS