Beispiel #1
0
def sell_card(targetQQ: str, cards_to_send: List[str]) -> str:
    cards_to_send = [
        name for name in cards_to_send if name != CARD_PLACEHOLDER
    ]
    original_cards = [*cards_to_send]

    # 读取配置信息
    load_config("config.toml", "config.toml.local")
    cfg = config()

    # 12.30 送卡片次数(re:好像送给别人没有上限?)
    indexes = list(range(len(cfg.account_configs), 0, -1))

    card_info_map = parse_card_group_info_map(zzconfig())
    for name in cards_to_send:
        if name not in card_info_map:
            return f"{name}不是本期卡片名称,有效的卡片名称为: {list(card_info_map.keys())}"

    success_send_list = []

    for idx in indexes:  # 从1开始,第i个
        account_config = cfg.account_configs[idx - 1]
        show_head_line(f"开始处理第{idx}个账户[{account_config.name}]",
                       color("fg_bold_yellow"))

        djcHelper = DjcHelper(account_config, cfg.common)
        lr = djcHelper.fetch_pskey()
        djcHelper.check_skey_expired()
        djcHelper.get_bind_role_list()

        remaining_cards = []
        for name in cards_to_send:
            res = djcHelper.send_card_by_name(name, targetQQ)
            retCode = int(res["13333"]["ret"])
            if retCode == 0:
                success_send_list.append(name)
            else:
                remaining_cards.append(name)

                if len(original_cards) == 1:
                    if retCode == 10017:
                        return "该账号今日已被赠送过四次"

        cards_to_send = remaining_cards
        if len(cards_to_send) == 0:
            break

    msg = ""
    if len(success_send_list) != 0:
        msg += f"\n成功发送以下卡片:{success_send_list}"
    if len(cards_to_send) != 0:
        msg += f"\n无法发送以下卡片:{cards_to_send},是否已达到赠送上限或者这个卡卖完了?"
    if len(success_send_list) != 0:
        msg += f"\n请使用手机打开集卡页面确认是否到账~ 若到账请按1元每张的价格主动扫码转账哦~(不自觉的坏孩子会被tjjtds哦<_<)"
    msg += "\n"

    return msg
Beispiel #2
0
        djcHelper.get_bind_role_list()

        lr = djcHelper.fetch_pskey()

        # re: 先填QQ
        # undone: 然后填写卡片
        targetQQ = "XXXXXXXXXXX"
        cards_to_send = [
            ("XXXXXXXXXXX", 1),
            ("XXXXXXXXXXX", 1),
            ("XXXXXXXXXXX", 1),
            ("XXXXXXXXXXX", 1),
        ]
        for name, count in cards_to_send:
            for i in range(count):
                djcHelper.send_card_by_name(name, targetQQ)

# -----------具体卡片相关信息---------------
# '1-1' 巅峰大佬刷竞速 {'name': '巅峰大佬刷竞速', 'id': 118409, 'prizeId': 44460, 'lotterySwitchId': 28608, 'index': '1-1'}
# '1-2' 主播趣味来打团 {'name': '主播趣味来打团', 'id': 118408, 'prizeId': 44459, 'lotterySwitchId': 28607, 'index': '1-2'}
# '1-3' BOSS机制全摸透 {'name': 'BOSS机制全摸透', 'id': 118407, 'prizeId': 44458, 'lotterySwitchId': 28606, 'index': '1-3'}
# '1-4' 萌新翻身把歌唱 {'name': '萌新翻身把歌唱', 'id': 118406, 'prizeId': 44457, 'lotterySwitchId': 28605, 'index': '1-4'}

# '2-1' 四人竞速希洛克 {'name': '四人竞速希洛克', 'id': 118405, 'prizeId': 44456, 'lotterySwitchId': 28604, 'index': '2-1'}
# '2-2' 普通困难任你选 {'name': '普通困难任你选', 'id': 118404, 'prizeId': 44455, 'lotterySwitchId': 28603, 'index': '2-2'}
# '2-3' 哪种都能领奖励 {'name': '哪种都能领奖励', 'id': 118403, 'prizeId': 44454, 'lotterySwitchId': 28602, 'index': '2-3'}
# '2-4' 点击报名薅大礼 {'name': '点击报名薅大礼', 'id': 118402, 'prizeId': 44453, 'lotterySwitchId': 28601, 'index': '2-4'}

# '3-1' 打团就可赢好礼 {'name': '打团就可赢好礼', 'id': 118401, 'prizeId': 44452, 'lotterySwitchId': 28600, 'index': '3-1'}
# '3-2' 报名即可领豪礼 {'name': '报名即可领豪礼', 'id': 118400, 'prizeId': 44451, 'lotterySwitchId': 28599, 'index': '3-2'}
# '3-3' 直播Q币抽不停  {'name': '直播Q币抽不停', 'id': 118399, 'prizeId': 44450, 'lotterySwitchId': 28598, 'index': '3-3'}
Beispiel #3
0
def sell_card(targetQQ: str, cards_to_send: List[str]) -> str:
    cards_to_send = [name for name in cards_to_send if name != CARD_PLACEHOLDER]
    original_cards = [*cards_to_send]

    # 读取配置信息
    cfg = config()

    # 12.30 送卡片次数(re:好像送给别人没有上限?)
    indexes = list(range(len(cfg.account_configs), 0, -1))

    if not is_new_version_ark_lottery():
        card_info_map = parse_card_group_info_map(zzconfig())
        for name in cards_to_send:
            if name not in card_info_map:
                return f"{name}不是本期卡片名称,有效的卡片名称为: {list(card_info_map.keys())}"

    success_send_list = []

    for idx in indexes:  # 从1开始,第i个
        account_config = cfg.account_configs[idx - 1]
        show_head_line(f"开始处理第{idx}个账户[{account_config.name}]", color("fg_bold_yellow"))
        if not account_config.function_switches.get_ark_lottery or not account_config.is_enabled():
            continue

        djcHelper = DjcHelper(account_config, cfg.common)
        djcHelper.fetch_pskey()
        djcHelper.check_skey_expired()
        djcHelper.get_bind_role_list()

        remaining_cards = []
        for name in cards_to_send:
            send_ok = False

            if is_new_version_ark_lottery():
                send_ok = djcHelper.dnf_ark_lottery_send_card(name, targetQQ)
            else:
                res = djcHelper.send_card_by_name(name, targetQQ)
                retCode = int(res["13333"]["ret"])

                if retCode == 0:
                    send_ok = True
                else:
                    if len(original_cards) == 1:
                        if retCode == 10017:
                            return "该账号今日已被赠送过四次"

            if send_ok:
                success_send_list.append(name)
            else:
                remaining_cards.append(name)

        cards_to_send = remaining_cards
        if len(cards_to_send) == 0:
            break

    msg = ""
    if len(success_send_list) != 0:
        msg += f"\n成功发送以下卡片:{success_send_list}"
    if len(cards_to_send) != 0:
        msg += f"\n无法发送以下卡片:{cards_to_send},是否已达到赠送上限或者这个卡卖完了?"
    if len(success_send_list) != 0:
        msg += "\n请使用手机打开集卡页面确认是否到账~ 若到账请按1元每张的价格主动扫码转账哦~(不定期我会核查的,如果买了不付款的话就加入本工具黑名单~)"
    msg += "\n"

    return msg