diff options
author | Kyomotoi <[email protected]> | 2020-11-22 01:01:43 +0800 |
---|---|---|
committer | Kyomotoi <[email protected]> | 2020-11-22 01:01:43 +0800 |
commit | f7198e8722f310926cf147bd0b218c5d9ef5d6c3 (patch) | |
tree | f4c3d0f2a003695b67e0e2018ec8d88898bcda90 /utils/utils_img | |
parent | 6c3e4c7f583be0006cd7bb913b7db81b987d2813 (diff) | |
download | ATRI-f7198e8722f310926cf147bd0b218c5d9ef5d6c3.tar.gz ATRI-f7198e8722f310926cf147bd0b218c5d9ef5d6c3.tar.bz2 ATRI-f7198e8722f310926cf147bd0b218c5d9ef5d6c3.zip |
[Update]
新增:
* 舆情检测
* 对涩图加以调用限制
修复:
* Pixiv插件全体
* 储存群聊信息时无法创建文件
优化:
* 部分代码重构,效率up
* 调整插件结构,使其看起来更舒服
Diffstat (limited to 'utils/utils_img')
-rw-r--r-- | utils/utils_img/__init__.py | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/utils/utils_img/__init__.py b/utils/utils_img/__init__.py deleted file mode 100644 index 7b79146..0000000 --- a/utils/utils_img/__init__.py +++ /dev/null @@ -1,62 +0,0 @@ -#!/usr/bin/env python3 -# -*- encoding: utf-8 -*- - -''' -@File : __init__.py -@Time : 2020/11/07 14:17:37 -@Author : Kyomotoi -@Contact : [email protected] -@Github : https://github.com/Kyomotoi -@License : Copyright © 2018-2020 Kyomotoi, All Rights Reserved. -''' -__author__ = 'kyomotoi' - -import os -import string -import aiohttp -from pathlib import Path -from random import sample - -import PIL.Image as Image -from PIL import ImageFile - -async def aio_download_pics(url) -> str: - ''' - 下载图片并重命名 - - :return: img file - ''' - path = Path('.') / 'ATRI' / 'data' / 'data_Temp' / 'img' - path = os.path.abspath(path) - img_key = ''.join(sample(string.ascii_letters + string.digits, 16)) - img = path + f'\\{img_key}.png' - async with aiohttp.ClientSession() as session: - async with session.get(url) as response: - pic = await response.read() #以Bytes方式读入非文字 - with open(img, mode='wb') as f:# 写入文件 - f.write(pic) - f.close() - return img - -def compress_image(outfile: str, kb=400, quality=85, k=0.9) -> str: - ''' - 压缩图片 - - :return: img file - ''' - o_size = os.path.getsize(outfile) // 1024 - if o_size <= kb: - return outfile - - ImageFile.LOAD_TRUNCATED_IMAGES = True # type: ignore - while o_size > kb: - im = Image.open(outfile) - x, y = im.size - out = im.resize((int(x*k), int(y*k)), Image.ANTIALIAS) - try: - out.save(outfile, quality=quality) - except Exception as e: - print(e) - break - o_size = os.path.getsize(outfile) // 1024 - return outfile |