前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >京东疯狂的JOY合成拿分红脚本

京东疯狂的JOY合成拿分红脚本

作者头像
季春二九
发布2023-03-22 12:45:47
3370
发布2023-03-22 12:45:47
举报
文章被收录于专栏:季春二九季春二九

活动地址:https://crazy-joy.jd.com/

脚本介绍:

1.python脚本,依赖requests库

2.这次cookie的获取直接使用pc炸年兽的cookie使用的,直接将脚本放在炸年兽的文件夹中即可,读取的是NS_Cookie.NS文件的cookie,也可以直接删除填入自己搞得Cookie

3.脚本可以完成签到,任务和看那个30s视频广告

4.由于一些同学不会py,顺带打包了下exe(PS:python打出来的包较大,不放心的直接用脚本即可)

自测了下没啥问题

i_1490875862238_cb3660017f42d8c1437e47e67c8e1418_b_w328h840.png
i_1490875862238_cb3660017f42d8c1437e47e67c8e1418_b_w328h840.png

[hint]本文资源下载

【免责声明】本订阅号大部分软件和资源收集于网络,只做私下学习和交流使用。所有资源和软件均来自互联网的优秀作者们,版权归原作者或企业所有。我们分享互联网资源和软件,但是不对任何资源和软件负法律责任,所有软件和资源请在您下载后24小时内删除。若作商业用途,请到官方购买正版,由于未及时购买和付费发生的侵权行为,与本订阅号无关,产生的一切后果由使用者自行承担。

1.微信扫下面二维关注公众号 2.后台回复 京东joy 进行下载[/hint]

代码语言:javascript
复制
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("搞完了,请按回车键退出")
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档