From bad11ad5da9cb2a3f76cb794ca656519eef71379 Mon Sep 17 00:00:00 2001
From: ljh938527 <2689819155@qq.com>
Date: Sun, 7 Dec 2025 14:57:55 +0800
Subject: [PATCH] second commit
---
.idea/.gitignore | 3 +
.idea/EmojiTextGenerator.iml | 10 ++++
.../inspectionProfiles/profiles_settings.xml | 6 ++
.idea/misc.xml | 6 ++
.idea/modules.xml | 8 +++
.idea/vcs.xml | 6 ++
main.py | 58 ++++++++++++++-----
models/connect_db.py | 2 +-
test.py | 21 ++++---
9 files changed, 96 insertions(+), 24 deletions(-)
create mode 100644 .idea/.gitignore
create mode 100644 .idea/EmojiTextGenerator.iml
create mode 100644 .idea/inspectionProfiles/profiles_settings.xml
create mode 100644 .idea/misc.xml
create mode 100644 .idea/modules.xml
create mode 100644 .idea/vcs.xml
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..359bb53
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,3 @@
+# 默认忽略的文件
+/shelf/
+/workspace.xml
diff --git a/.idea/EmojiTextGenerator.iml b/.idea/EmojiTextGenerator.iml
new file mode 100644
index 0000000..51331cb
--- /dev/null
+++ b/.idea/EmojiTextGenerator.iml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
new file mode 100644
index 0000000..105ce2d
--- /dev/null
+++ b/.idea/inspectionProfiles/profiles_settings.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..85c401f
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..63bbccf
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/main.py b/main.py
index cb0f617..b1dbc4c 100644
--- a/main.py
+++ b/main.py
@@ -1,17 +1,47 @@
import os
-from dashscope import MultiModalConversation
-import dashscope
+from pathlib import Path
+from models.generator import Generator
+from models.emoji_db import check_emoji, update_description
+from controllers.localfile_handles import get_emoji_count, yield_emoji_path
+from controllers.compress_image import compress_image
+from models.logger import setup_logger
-# 本地图像的绝对路径
-local_path = r"D:\Python\mcunc\EmojiTextGenerator\emojis\00e4f193-74af-40f7-8722-59d5a5931f92.jpg"
-image_path = f"file://{local_path}"
-messages = [
- {'role':'user',
- 'content': [{'image': image_path},
- {'text': '使用简洁语言描述该表情包 ,例如 在吗 ,生气,?'}]}]
-response = MultiModalConversation.call(
- api_key="sk-213f83213fce4e2ba41b8e67721f19cb",
- model='qwen3-vl-plus',
- messages=messages)
+logger = setup_logger()
-print(response.output.choices[0].message.content[0]["text"])
+root_folder = "D:\\Python\\mcunc\\EmojiTextGenerator\\"
+emoji_folder = "D:\\Python\\mcunc\\EmojiTextGenerator\\emojis\\"
+emoji = yield_emoji_path(emoji_folder)
+
+api_key = "sk-213f83213fce4e2ba41b8e67721f19cb"
+gen = Generator(api_key)
+
+emoji_file = next(emoji)
+emoji_uuid = ''
+p = Path(emoji_file)
+if p.suffix == ".jpg" or p.suffix == ".jpeg":
+ emoji_uuid = p.stem
+# print(emoji_uuid)
+image = compress_image(emoji_file)
+image_path = Path(root_folder) / image
+print(image_path)
+
+if check_emoji(emoji_uuid):
+ description = gen.process_single_image(str(image_path))
+ update_description(emoji_uuid, description)
+ logger.info(f"图片 {emoji_file} 的描述词生成完毕, 其 description 为: {description}")
+else:
+ logger.error(f"图片 {emoji_uuid} 不在数据库中!")
+
+# # 本地图像的绝对路径
+# local_path = r"D:\Python\mcunc\EmojiTextGenerator\emojis\00e4f193-74af-40f7-8722-59d5a5931f92.jpg"
+# image_path = f"file://{local_path}"
+# messages = [
+# {'role':'user',
+# 'content': [{'image': image_path},
+# {'text': '使用简洁语言描述该表情包 ,例如 在吗 ,生气,?'}]}]
+# response = MultiModalConversation.call(
+# api_key="sk-213f83213fce4e2ba41b8e67721f19cb",
+# model='qwen3-vl-plus',
+# messages=messages)
+#
+# print(response.output.choices[0].message.content[0]["text"])
diff --git a/models/connect_db.py b/models/connect_db.py
index afb67ef..6f0a4f7 100644
--- a/models/connect_db.py
+++ b/models/connect_db.py
@@ -9,7 +9,7 @@ logger = setup_logger()
def connect_db() -> Connection | None:
"""连接数据库,如果没有则初始化数据库和表"""
try:
- config = toml.load("../config.toml")
+ config = toml.load("config.toml")
db_host = config["db_host"]
db_port = config["db_port"]
db_user = config["db_user"]
diff --git a/test.py b/test.py
index 4a5ab9e..a557f83 100644
--- a/test.py
+++ b/test.py
@@ -8,14 +8,15 @@ from models.logger import setup_logger
logger = setup_logger()
-emoji_folders = "D:\\Python\\mcunc\\EmojiTextGenerator\\emojis\\"
-emoji = yield_emoji_path(emoji_folders)
+root_folder = "D:\\Python\\mcunc\\EmojiTextGenerator\\"
+emoji_folder = "D:\\Python\\mcunc\\EmojiTextGenerator\\emojis\\"
+emoji = yield_emoji_path(emoji_folder)
-api_key = os.getenv('DASHSCOPE_API_KEY')
+api_key = "sk-213f83213fce4e2ba41b8e67721f19cb"
def main():
gen = Generator(api_key)
- for f in range(get_emoji_count(emoji_folders)):
+ for f in range(get_emoji_count(emoji_folder)):
emoji_file = next(emoji)
emoji_uuid = ''
p = Path(emoji_file)
@@ -23,13 +24,15 @@ def main():
emoji_uuid = p.stem
# print(emoji_uuid)
image = compress_image(emoji_file)
+ image_path = Path(root_folder) / image
+ print(image_path)
- # if not check_emoji(emoji_uuid):
- # logger.error(f"图片 {emoji_uuid} 不在数据库中!")
- # else:
- description = gen.process_single_image(image)
- if update_description(emoji_uuid, description)
+ if check_emoji(emoji_uuid):
+ description = gen.process_single_image(str(image_path))
+ update_description(emoji_uuid, description)
logger.info(f"图片 {emoji_file} 的描述词生成完毕, 其 description 为: {description}")
+ else:
+ logger.error(f"图片 {emoji_uuid} 不在数据库中!")
if __name__ == "__main__":