Evaaaaa06 commited on
Commit
e5255b6
·
verified ·
1 Parent(s): 4123c19

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +6 -9
main.py CHANGED
@@ -66,16 +66,12 @@ async def webhook(
66
  #==========================
67
  # 使用者請求生成圖片
68
  #==========================
69
- def upload_image_to_imgur_with_token(image_path, access_token):
70
  """
71
- 使用 Imgur OAuth2 Access Token 上傳圖片
72
  """
73
  try:
74
- with open(image_path, "rb") as img_file:
75
- image_binary = img_file.read()
76
-
77
  headers = {"Authorization": f"Bearer {access_token}"}
78
-
79
  data = {
80
  "image": base64.b64encode(image_binary).decode("utf-8"),
81
  "type": "base64",
@@ -90,8 +86,7 @@ def upload_image_to_imgur_with_token(image_path, access_token):
90
  except Exception as e:
91
  print("圖片上傳例外:", e)
92
  return None
93
-
94
-
95
  #==========================
96
  # 使用者上傳圖片
97
  #==========================
@@ -123,6 +118,7 @@ def analyze_with_gemini(image_path, user_text):
123
  """
124
  try:
125
  # 確保圖片存在
 
126
  if not os.path.exists(image_path):
127
  raise FileNotFoundError(f"圖片路徑無效:{image_path}")
128
 
@@ -157,7 +153,7 @@ def handle_image_message(event):
157
  chat_sessions[user_id] = chat
158
 
159
  user_text = event.message.text if event.message.type == "text" else None
160
-
161
  if user_text and user_text.startswith("請幫我生成圖片"):
162
  prompt = user_text.replace("請幫我生成圖片", "").strip()
163
 
@@ -168,6 +164,7 @@ def handle_image_message(event):
168
  image_data = response.parts[0].inline_data.data
169
  access_token = os.environ.get("IMGUR_ACCESS_TOKEN")
170
  image_url = upload_image_to_imgur_with_token(image_data,access_token)
 
171
 
172
  if image_url:
173
  line_bot_api.reply_message(
 
66
  #==========================
67
  # 使用者請求生成圖片
68
  #==========================
69
+ def upload_image_to_imgur_with_token(image_binary, access_token):
70
  """
71
+ 使用 Imgur OAuth2 Access Token 上傳圖片(直接接收 binary,不需存檔)
72
  """
73
  try:
 
 
 
74
  headers = {"Authorization": f"Bearer {access_token}"}
 
75
  data = {
76
  "image": base64.b64encode(image_binary).decode("utf-8"),
77
  "type": "base64",
 
86
  except Exception as e:
87
  print("圖片上傳例外:", e)
88
  return None
89
+
 
90
  #==========================
91
  # 使用者上傳圖片
92
  #==========================
 
118
  """
119
  try:
120
  # 確保圖片存在
121
+ print("上傳圖片至 Imgur...")
122
  if not os.path.exists(image_path):
123
  raise FileNotFoundError(f"圖片路徑無效:{image_path}")
124
 
 
153
  chat_sessions[user_id] = chat
154
 
155
  user_text = event.message.text if event.message.type == "text" else None
156
+ image_url = None
157
  if user_text and user_text.startswith("請幫我生成圖片"):
158
  prompt = user_text.replace("請幫我生成圖片", "").strip()
159
 
 
164
  image_data = response.parts[0].inline_data.data
165
  access_token = os.environ.get("IMGUR_ACCESS_TOKEN")
166
  image_url = upload_image_to_imgur_with_token(image_data,access_token)
167
+ print("Imgur 回傳 URL:", image_url)
168
 
169
  if image_url:
170
  line_bot_api.reply_message(