diff --git a/plugins/send_setu/__init__.py b/plugins/send_setu/__init__.py index 6829c91f..61278605 100644 --- a/plugins/send_setu/__init__.py +++ b/plugins/send_setu/__init__.py @@ -102,7 +102,8 @@ async def _(bot: Bot, event: GroupMessageEvent, state: T_State): setu_img, index = await search_online_setu(urls[i]) if index == -1: setu_img, index = get_setu('', setu_data, keyword) - await setu.send(setu_img) + if setu_img: + await setu.send(setu_img) logger.error(f'色图下载失败 本地发送 {index}.jpg') else: await setu.send(text_list[i] + setu_img) @@ -111,7 +112,8 @@ async def _(bot: Bot, event: GroupMessageEvent, state: T_State): f" 发送在线色图 {keyword}.jpg 成功") except Exception as e: setu_img, index = get_setu('', setu_data, keyword) - await setu.send(setu_img) + if setu_img: + await setu.send(setu_img) logger.error(f'色图发送错误 本地发送 {index}.jpg e:{e}') else: await setu.send(urls) @@ -140,7 +142,7 @@ async def _(bot: Bot, event: PrivateMessageEvent, state: T_State): f"USER {event.user_id} GROUP private 发送色图 {index}.jpg 成功") else: msg = img_id - if list(bot.config.nickname)[0].find(msg) != -1: + if msg.find('真寻') != -1: _ulmt.set_False(event.user_id) await setu.finish('咳咳咳,虽然我很可爱,但是我木有自己的色图~~~有的话记得发我一份呀') keyword, r18, num = await check_r18_and_keyword(msg, event.user_id) @@ -150,6 +152,10 @@ async def _(bot: Bot, event: PrivateMessageEvent, state: T_State): await setu.finish('要节制啊,请明天再来...\n【每日提供5次】', at_sender=True) else: await UserCount.add_count(event.user_id, 'setu_r18', count=1) + try: + setu_data = json.load(open(f'{TXT_PATH}/r18_setu_data.json', 'r', encoding='utf8')) + except Exception: + setu_data = {} try: urls, text_list, code = await get_setu_urls(keyword, num, r18=r18) except ClientConnectorError: @@ -162,21 +168,27 @@ async def _(bot: Bot, event: PrivateMessageEvent, state: T_State): for i in range(num): try: setu_img, index = await search_online_setu(urls[i]) - if index == -1 and img_id != 'r': - setu_img, index = get_setu('', setu_data, keyword) - await setu.send(setu_img) - logger.error(f'色图下载失败 本地发送 {index}.jpg') + if index == -1: + if img_id == 'r': + setu_img, index = get_setu('', setu_data, keyword, True) + else: + setu_img, index = get_setu('', setu_data, keyword) + if setu_img: + await setu.send(setu_img) + logger.error(f'色图下载失败 本地发送 {index}.jpg') else: await setu.send(text_list[i] + setu_img) logger.info( f"USER {event.user_id} GROUP private" f" 发送{'r18' if img_id == 'r' else ''}色图 {index}.jpg 成功") except Exception as e: - if img_id != 'r': - img_setu, index = get_setu('', setu_data, keyword) - logger.error(f'色图发送错误 本地发送 {index}.jpg e:{e}') + if img_id == 'r': + img_setu, index = get_setu('', setu_data, keyword, True) else: - await setu.send('图片下载惜败!', at_sender=True) + img_setu, index = get_setu('', setu_data, keyword) + if img_setu: + await setu.send(img_setu) + logger.error(f'色图发送错误 本地发送 {index}.jpg e:{e}') count += 1 if count > 6: await setu.send('检测到下载惜败的图片过多,这次就不算数了,果咩..', at_sender=True) @@ -271,6 +283,7 @@ async def _(bot: Bot, event: MessageEvent, state: T_State): _ulmt.set_False(event.user_id) return if keyword.find('真寻') != -1: + _ulmt.set_False(event.user_id) await setu.finish('咳咳咳,虽然我很可爱,但是我木有自己的色图~~~有的话记得发我一份呀') urls, text_list, code = await get_setu_urls(keyword, num) if code == 200: @@ -279,15 +292,17 @@ async def _(bot: Bot, event: MessageEvent, state: T_State): setu_img, index = await search_online_setu(urls[i]) if index == -1: setu_img, index = get_setu('', setu_data, keyword) - await setu_reg.send(setu_img) - logger.error(f'色图下载失败 本地发送 {index}.jpg') + if setu_img: + await setu_reg.send(setu_img) + logger.error(f'色图下载失败 本地发送 {index}.jpg') else: await setu_reg.send(text_list[i] + '\n' + setu_img) except ActionFailed as e: await setu_reg.send('这图太色了,会教坏小孩子的,不给看..') except Exception as e: setu_img, index = get_setu('', setu_data, keyword) - await setu_reg.send(setu_img) + if setu_img: + await setu_reg.send(setu_img) logger.error(f'色图发送错误 e:{e}') else: logger.info(