Esempio n. 1
0
def daily_job():
    while (1):
        Auth.work()
        Capsule.work()
        Coin2Silver.work()
        GiftSend.work()
        Group.work()
        Heart.work()
        Silver2Coin.work()
        SilverBox.work()
        Task.work()
        # 休息0.5s,减少CPU占用
        time.sleep(0.5)
Esempio n. 2
0
loop = asyncio.get_event_loop()

timer = Timer(loop)
console = Console.Console(loop)

area_ids = [1,2,3,4,5,6,]
Statistics(len(area_ids))

daily_tasks = [
    Capsule.work(),
    CaseJudger.work(),
    Coin2Silver.work(),
    DailyBag.work(),
    GiftSend.work(),
    Group.work(),
    Heart.work(),
    Silver2Coin.work(),
    SilverBox.work(),
    Task.work(),
    MainDailyTask.work(),
    MatchTask.work()
]
server_tasks = [
    MonitorServer.run_forever()
]
danmu_tasks = [Danmu_Monitor.run_Danmu_Raffle_Handler(i) for i in area_ids]
other_tasks = [
    rafflehandler.run()
]

api_thread = threading.Thread(target=API.work)
Esempio n. 3
0
def main():
    # 开启时清理日志
    Log.clean_log(startup=True)

    def signal_handler(signal, frame):
        os._exit(0)

    if config["Other"]["INFO_MESSAGE"] != "False":
        Log.info("BiliBiliHelper Python " + version)
        Log.info("Powered By TheWanderingCoel with love❤️")

    if config["Other"]["SENTENCE"] != "False":
        Log.info(Sentence().get_sentence())

    # 检查Config
    ConfigCheck()

    # 注册信号
    signal.signal(signal.SIGINT, signal_handler)

    loop = asyncio.get_event_loop()

    timer = Timer(loop)
    console = Console.Console(loop)

    area_ids = [
        1,
        2,
        3,
        4,
        5,
        6,
    ]
    Statistics(len(area_ids))

    daily_tasks = [
        Capsule.work(),
        CaseJudger.work(),
        Coin2Silver.work(),
        DailyBag.work(),
        GiftSend.work(),
        Group.work(),
        Heart.work(),
        Silver2Coin.work(),
        SilverBox.work(),
        Task.work()
    ]
    server_tasks = [MonitorServer.run_forever()]
    danmu_tasks = [Danmu_Monitor.run_Danmu_Raffle_Handler(i) for i in area_ids]
    other_tasks = [rafflehandler.run()]

    api_thread = threading.Thread(target=API.work)
    api_thread.start()

    if not options.disable_console:
        console_thread = threading.Thread(target=console.cmdloop)
        console_thread.start()

    # 先登陆一次,防止速度太快导致抽奖模块出错
    Auth.work()

    if config["Function"]["RAFFLE_HANDLER"] != "False":
        loop.run_until_complete(
            asyncio.wait(daily_tasks + server_tasks + danmu_tasks +
                         other_tasks))
    else:
        loop.run_until_complete(asyncio.wait(daily_tasks))

    api_thread.join()

    if not options.disable_console:
        console_thread.join()

    loop.close()