基于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调用系统底层API播放wav文件的方法
Aug 11 Python
Python异常处理操作实例详解
May 10 Python
python控制windows剪贴板,向剪贴板中写入图片的实例
May 31 Python
python使用循环打印所有三位数水仙花数的实例
Nov 13 Python
程序员写Python时的5个坏习惯,你有几条?
Nov 26 Python
在Python 中同一个类两个函数间变量的调用方法
Jan 31 Python
python三方库之requests的快速上手
Mar 04 Python
Python常用特殊方法实例总结
Mar 22 Python
OpenCV图像颜色反转算法详解
May 13 Python
python单向循环链表原理与实现方法示例
Dec 03 Python
Selenium自动化测试工具使用方法汇总
Jun 12 Python
如何获取numpy array前N个最大值
May 14 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多线程批量采集下载美女图片的实现代码(续)
2013/06/03 PHP
判断php数组是否为索引数组的实现方法
2013/06/13 PHP
php计算两个日期相差天数的方法
2015/03/14 PHP
YII框架模块化处理操作示例
2019/04/26 PHP
php扩展开发入门demo示例
2019/09/23 PHP
jquery实现背景墙聚光灯效果示例分享
2014/03/02 Javascript
js实现字符串的16进制编码不加密
2014/04/25 Javascript
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
2014/05/11 Javascript
JS判断移动端访问设备并加载对应CSS样式
2014/06/13 Javascript
JS与jQuery遍历Table所有单元格内容的方法
2015/12/07 Javascript
浅谈js的url解析函数封装
2016/06/28 Javascript
BootStrap iCheck插件全选与获取value值的解决方法
2016/08/24 Javascript
js实现自动图片轮播代码
2017/03/22 Javascript
详解webpack es6 to es5支持配置
2017/05/04 Javascript
js中的事件委托或是事件代理使用详解
2017/06/23 Javascript
AngularJS 表单验证手机号的实例(非必填)
2017/11/12 Javascript
javascript sort()对数组中的元素进行排序详解
2019/10/13 Javascript
处理JavaScript值为undefined的7个小技巧
2020/07/28 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
python中二维阵列的变换实例
2014/10/09 Python
在Python的web框架中中编写日志列表的教程
2015/04/30 Python
Python简单定义与使用字典dict的方法示例
2017/07/25 Python
Python获取指定文件夹下的文件名的方法
2018/02/06 Python
浅谈python中真正关闭socket的方法
2018/12/18 Python
用Python解决x的n次方问题
2019/02/08 Python
皇马官方商城:Real Madrid Store
2016/09/02 全球购物
新浪网技术部笔试题
2016/08/26 面试题
就业自我评价
2014/02/04 职场文书
《小草和大树》教学反思
2014/02/16 职场文书
《长城和运河》教学反思
2014/04/14 职场文书
今日说法观后感
2015/06/08 职场文书
交通事故责任认定书
2015/08/06 职场文书
民事纠纷协议书
2016/03/23 职场文书
python 判断文件或文件夹是否存在
2022/03/18 Python
java项目构建Gradle的使用教程
2022/03/24 Java/Android
微软Win11 全新照片应用面向 Dev预览版推出 新版本上手体验图集
2022/09/23 数码科技