京东疯狂的JOY合成拿分红脚本 自动完成任务和看视频
好吧我又来了,最近炸年兽应该大家玩的都很欢乐,这个合成的活动没看到软件
活动好像挺久了之前没怎么注意到,大概就是合成分红京豆的,有兴趣的可以看看
活动地址:https://crazy-joy.jd.com/
脚本介绍:
1.python脚本,依赖requests库
2.这次cookie的获取直接使用pc炸年兽的cookie使用的
直接将脚本放在炸年兽的文件夹中即可,读取的是NS_Cookie.NS文件的cookie,也可以直接删除填入自己搞得Cookie
3.脚本可以完成签到,任务和看那个30s视频广告
4.由于一些同学不会py,顺带打包了下exe(PS:python打出来的包较大,不放心的直接用脚本即可)
5.提示没权限的记得进下活动游戏先
下载地址:https://meituan.lanzous.com/b0f8631ji 密码:6626
自测了下没啥问题
import requests import time import json import re from urllib import parse import urllib3 urllib3.disable_warnings() ck = open('NS_Cookie.NS','r') Cookie = ck.read() headers = { 'User-Agent': 'jdapp;Mozilla/5.0 (Linux; U; Android 7.0; zh-CN; BAC-TL00 Build/HUAWEIBAC-TL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/11.6.4.950 UCBS/2.11.1.28 Mobile Safari/537.36 AliApp(TB/7.3.0.9) WindVane/8.3.0 1080X1812', 'Accept': 'application/json', 'Content-Type': 'application/x-www-form-urlencoded', 'Origin': 'https://h5.m.jd.com', 'Referer': 'https://h5.m.jd.com/babelDiy/Zeus/3DDunaJMLDamrmGwu73QbqtGtbX1/index.html?babelChannel=ttt5', 'Cookie':Cookie } def sign(): url = 'https://api.m.jd.com/?appid=crazy_joy&functionId=crazyJoy_task_doSign&t=%s' % int(round(time.time() * 1000)) try: res = requests.get(url,headers=headers,verify=False).json() if res.get('resultCode') == '0': beans = res.get('data').get('beans') coins = res.get('data').get('coins') print('签到成功,获得%s个京豆%s个金币' % (beans,coins)) else: print(res.get('message')) except: print('其他') def task_list(): url = "https://api.m.jd.com/?body=%7B%22paramData%22:%7B%22taskType%22:%22DAY_TASK%22%7D%7D&uts=880e9f5baedd9855938c06d5f1aebaa6600ba8bb&appid=crazy_joy&functionId=crazyJoy_task_getTaskState&t=1611376827417" res = requests.get(url,headers=headers,verify=False).json() datas = res.get('data') lists = [] for i in datas: taskId = i.get('taskId') status = i.get('status') taskTitle = i.get('taskTitle') if status == 0 and taskId != 50: s = (taskId,taskTitle) lists.append(s) if status == 3: print(taskTitle + '任务已完成') return lists def renwu(): lists = task_list() for list1 in lists: taskId,taskTitle = list1 times = re.findall(r'览(.*?)秒',taskTitle,re.S) url = 'https://api.m.jd.com/?body={"action":"MARK","taskId":%s}&appid=crazy_joy&functionId=crazyJoy_task_viewPage' % taskId res = requests.get(url,headers=headers,verify=False).json() taskRecordId = res.get('data').get('taskRecordId') sleep_time = int(times[0]) + 1 print('[%s]执行中...等待%s秒' % (taskTitle,sleep_time)) time.sleep(sleep_time) #逛店 url1 = 'https://api.m.jd.com/client.action?functionId=crazyJoy_task_viewPage' data = { 'appid':'crazy_joy', 'body':'{"taskId":%s,"taskRecordId":"%s","rechargeversion":"8.5","action":"INCREASE"}' % (taskId,taskRecordId), 't':int(round(time.time() * 1000)), 'client':'wh5', 'clientVersion':'1.0.0' } try: res1 = requests.post(url1,headers=headers,data=data, verify=False).json() if res1.get('resultCode') == '0': print('[%s]任务完成' % taskTitle) else: print(res1.get('message')) except: print('其他') #领取 data1 = { 'body':'{"taskId":%s}' % taskId, 'appid':'crazy_joy', 'functionId':'crazyJoy_task_obtainAward', 't':int(round(time.time() * 1000)) } data1 = parse.urlencode(data1) url2 = 'https://api.m.jd.com/?' + data1 try: res2 = requests.get(url2,headers=headers,verify=False).json() if res2.get('resultCode') == '0': coins = res2.get('data').get('coins') print('[%s]任务完成,获得%s金币' % (taskTitle,coins)) else: print(res2.get('message')) except: print('其他') def get_luckyBoxRecordId(): url = 'https://api.m.jd.com/?appid=crazy_joy&functionId=crazyJoy_joy_produce&t=%s' % int(round(time.time() * 1000)) try: res = requests.get(url,headers=headers,verify=False).json() luckyBoxRecordId = res.get('data').get('luckyBoxRecordId') advertViewTimes = res.get('data').get('advertViewTimes') return luckyBoxRecordId,advertViewTimes except: return None def LuckyBox_Task(): while True: luckyBoxRecordId,advertViewTimes = get_luckyBoxRecordId() if advertViewTimes == 0: print('观看任务已完成了哦') break print('还剩%s次观看次数' % advertViewTimes) if luckyBoxRecordId != None: data = { 'appid':'crazy_joy', 'functionId':'crazyJoy_event_getVideoAdvert', 'body':'{"eventType":"LUCKY_BOX_DROP","eventRecordId":"%s","eventPopupClick":0}' % luckyBoxRecordId, 't':int(round(time.time() * 1000)) } data = parse.urlencode(data) url = 'https://api.m.jd.com/?' + data try: res = requests.get(url,headers=headers,verify=False).json() if res.get('resultCode') == '0': for x in range(31,-1,-1): mystr = "获取任务成功,需要等待" + str(x) + '秒' print(mystr,end = "") print("\b" * (len(mystr)*2),end = "",flush=True) time.sleep(1) data1 = { 'appid':'crazy_joy', 'functionId':'crazyJoy_event_obtainAward', 'body':'{"eventType":"LUCKY_BOX_DROP","eventRecordId":"%s"}' % luckyBoxRecordId, 't':int(round(time.time() * 1000)) } data1 = parse.urlencode(data1) url1 = 'https://api.m.jd.com/?' + data1 try: res1 = requests.get(url1,headers=headers,verify=False).json() if res1.get('resultCode') == '0': coins = res1.get('data').get('coins') print('任务已完成,获得了%s个金币' % coins) else: print(res1.get('message')) except: print('其他1') else: print(res.get('message')) except: print('其他2') print('等待5秒继续获取') time.sleep(5) sign() renwu() LuckyBox_Task() print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(int(time.time())))) input("搞完了,请按回车键退出")