基于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编写一个简单的Lisp解释器的教程
Apr 03 Python
python获取指定网页上所有超链接的方法
Apr 04 Python
Python的多态性实例分析
Jul 07 Python
Python用模块pytz来转换时区
Aug 19 Python
利用Python爬虫给孩子起个好名字
Feb 14 Python
Python模拟登陆实现代码
Jun 14 Python
python使用socket创建tcp服务器和客户端
Apr 12 Python
Python标准库shutil用法实例详解
Aug 13 Python
Python如何实现转换URL详解
Jul 02 Python
Pycharm最常用的快捷键及使用技巧
Mar 05 Python
python中count函数知识点浅析
Dec 17 Python
pytorch 实现变分自动编码器的操作
May 24 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
全国FM电台频率大全 - 15 山东省
2020/03/11 无线电
PHP将XML转数组过程详解
2013/11/13 PHP
基于PHP实现用户在线状态检测
2020/11/10 PHP
自己的js工具_Form 封装
2009/08/21 Javascript
深入领悟JavaScript中的面向对象
2013/11/18 Javascript
使用JavaScript的AngularJS库编写hello world的方法
2015/06/23 Javascript
正则表达式优化JSON字符串的技巧
2015/12/24 Javascript
EasyUI闪屏EasyUI页面加载提示(原理+代码+效果图)
2016/02/21 Javascript
jQuery实现的网格线绘制方法
2016/06/20 Javascript
js实现table添加行tr、删除行tr、清空行tr的简单实例
2016/10/15 Javascript
一个例子轻松学会Vue.js
2017/01/02 Javascript
js放到head中失效的原因与解决方法
2017/03/07 Javascript
关于javascript获取内联样式与嵌入式样式的实例
2017/06/01 Javascript
DataTables添加额外的查询参数和删除columns等无用参数实例
2017/07/04 Javascript
详解React Native 采用Fetch方式发送跨域POST请求
2017/11/15 Javascript
JS加密插件CryptoJS实现AES加密操作示例
2018/08/16 Javascript
[01:32]DOTA2次级联赛——首支职业女子战队选拔赛全记录
2014/10/23 DOTA
Python高级应用实例对比:高效计算大文件中的最长行的长度
2014/06/08 Python
决策树的python实现方法
2014/11/18 Python
python持久性管理pickle模块详细介绍
2015/02/18 Python
Python简单爬虫导出CSV文件的实例讲解
2018/07/06 Python
在python环境下运用kafka对数据进行实时传输的方法
2018/12/27 Python
在python plt图表中文字大小调节的方法
2019/07/08 Python
解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available
2019/07/31 Python
Python 按比例获取样本数据或执行任务的实现代码
2020/12/03 Python
详解matplotlib中pyplot和面向对象两种绘图模式之间的关系
2021/01/22 Python
css3模拟jq点击事件的实例代码
2017/07/06 HTML / CSS
TripAdvisor斯洛伐克:阅读评论、比较价格和酒店预订
2018/04/25 全球购物
2014年开学第一课活动方案
2014/03/06 职场文书
《狼和小羊》教学反思
2014/04/20 职场文书
安全生产大检查方案
2014/05/07 职场文书
摄影展策划方案
2014/06/02 职场文书
影子教师研修方案
2014/06/14 职场文书
爱护公物标语
2014/06/24 职场文书
关于公司年会的开幕词
2016/03/04 职场文书
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL