Пример #1
0
async def handle_1_room_TV(real_roomid):
    result = await utils.enter_room(real_roomid)
    if result:
        json_response = await bilibili.get_giftlist_of_TV(real_roomid)
        current_time = CurrentTime()
        # print(json_response['data']['list'])
        checklen = json_response['data']['list']
        list_available_raffleid = []
        for j in checklen:
            raffle_id = j['raffleId']
            raffle_type = j['type']
            time_wanted = j['time_wait'] + current_time
            # 处理一些重复
            if not Rafflehandler().check_duplicate(raffle_id):
                print(raffle_id)
                list_available_raffleid.append(
                    (raffle_id, raffle_type, time_wanted))
                Rafflehandler().add2raffle_id(raffle_id)

        num_available = len(list_available_raffleid)
        # print(list_available_raffleid)
        for raffle_id, raffle_type, time_wanted in list_available_raffleid:
            BiliTimer.append2list_jobs(
                handle_1_TV_raffle, time_wanted,
                (num_available, real_roomid, raffle_id, raffle_type))
Пример #2
0
async def handle_1_room_TV(real_roomid):
    result = await utils.enter_room(real_roomid)
    if not result:
        return None

    json_response = await OnlineNet().req('get_giftlist_of_TV', real_roomid)
    current_time = CurrentTime()
    checklen = json_response['data']['gift']
    if not checklen:
        return None

    list_available_raffleid = []
    for j in checklen:
        raffle_id = j['raffleId']
        raffle_type = j['type']
        total_time = j['time']
        time_wait = j['time_wait']
        time_wanted = current_time + time_wait + random.randint(3, 15)
        # 处理一些重复
        if not Rafflehandler().check_duplicate(raffle_id):
            list_available_raffleid.append(
                (raffle_id, raffle_type, time_wanted))
            Rafflehandler().add2raffle_id(raffle_id)

    num_available = len(list_available_raffleid)
    # print(list_available_raffleid)
    for raffle_id, raffle_type, time_wanted in list_available_raffleid:
        BiliTimer.append2list_jobs(
            handle_1_TV_raffle, time_wanted,
            (num_available, raffle_type, real_roomid, raffle_id))
async def handle_1_room_storm(roomid):
    result = await utils.enter_room(roomid)
    if result:
        temp = await OnlineNet().req('get_giftlist_of_storm', roomid)
        check = len(temp['data'])
        list_available_raffleid = []
        if check != 0 and temp['data']['hasJoin'] != 1:
            id = temp['data']['id']
            list_available_raffleid.append((id, 0))
        for id, time_wanted in list_available_raffleid:
            BiliTimer.append2list_jobs(handle_1_storm_raffle, time_wanted, (id,))