rambo vor 11 Monaten
Ursprung
Commit
5b2aff1d91
4 geänderte Dateien mit 34 neuen und 25 gelöschten Zeilen
  1. 2 1
      python/config.ini
  2. 5 3
      python/main.py
  3. 12 4
      python/services/deal_one_image.py
  4. 15 17
      python/services/other/module_online_data.py

+ 2 - 1
python/config.ini

@@ -1,7 +1,8 @@
 [app]
 host=127.0.0.1
 port=7074
-debug=true
+debug=false
+env=prod
 [dev]
 origin= http://my2.pubdata.cn
 host= mybackend2.pubdata.cn

+ 5 - 3
python/main.py

@@ -27,6 +27,7 @@ def signal_handler(sig, frame):
     print("[python] [flask] Received signal to terminate the server:", sig)
     sys.exit(0)
 
+
 # 注册信号处理函数
 signal.signal(signal.SIGTERM, signal_handler)
 signal.signal(signal.SIGINT, signal_handler)
@@ -37,9 +38,10 @@ if __name__ == "__main__":
     host = config.get("app", "host")
     port = config.get("app", "port")
     debug = config.get("app", "debug")
-    uvicorn.run(
-        app="api:app", host=host, port=int(port), reload=bool(debug), loop="auto"
-    )
+    if debug == True:
+        uvicorn.run(app="api:app", host=host, port=int(port), reload=debug, loop="auto")
+    else:
+        uvicorn.run(app="api:app", host=host, port=int(port), loop="auto")
     # app.run(port=int(port), use_reloader=bool(debug))
     # 注册信号处理函数
     # 或许flask内置的stdio与node.js stdio有冲突,导致控制台无法显示信息。

+ 12 - 4
python/services/deal_one_image.py

@@ -149,7 +149,10 @@ class DealOneImage(Base):
         # 直接调用抠图
         # 1、增加获取key,2、key需要加密、3、429报错 重试再来拿一个KEY
         self.add_log("开始处理")
-        remaining_times = self.get_online_data.get_cutout_image_times().get("balance")
+        remaining_times_obj = self.get_online_data.get_cutout_image_times()
+        if remaining_times_obj == False:
+            raise UnicornException("获取可用次数失败,请检查是否登录")
+        remaining_times = remaining_times_obj.get("balance")
         print("remaining_times", remaining_times)
         if remaining_times <= 0:
             raise UnicornException("次数不足,处理失败")
@@ -167,7 +170,10 @@ class DealOneImage(Base):
         out_root_path = "{}/已扣图".format(self.root_path)
         self.check_path(out_root_path)
         try:
-            balance = self.get_online_data.get_cutout_image_times().get("balance")
+            remaining_times_obj = self.get_online_data.get_cutout_image_times()
+            if remaining_times_obj == False:
+                raise UnicornException("获取可用次数失败,请检查是否登录")
+            balance = remaining_times_obj.get("balance")
             self.add_log("查询balance:{}成功".format(balance))
             if balance <= 0:
                 self.add_log("次数不足,处理失败")
@@ -446,8 +452,10 @@ class DealOneImageBeforehand(Base):
         image_deal_info = {}
         image_deal_info["原始图片大小"] = (original_pic.x, original_pic.y)
         self.add_log("开始预抠图处理")
-        remaining_times = self.get_online_data.get_cutout_image_times().get("balance")
-        print("remaining_times", remaining_times)
+        remaining_times_obj = self.get_online_data.get_cutout_image_times()
+        if remaining_times_obj == False:
+            raise UnicornException("获取可用次数失败,请检查是否登录")
+        remaining_times = remaining_times_obj.get("balance")
         if remaining_times <= 0:
             raise UnicornException("次数不足,处理失败")
         self.get_online_data.dispose_point("sub")

+ 15 - 17
python/services/other/module_online_data.py

@@ -16,17 +16,14 @@ config = configparser.ConfigParser()
 config_name = "config.ini"
 config.read(config_name)
 debug = config.get("app", "debug")
-if bool(debug) == False:
-    origin = config.get("prod", "origin")
-    host = config.get("prod", "host")
-    domain = config.get("prod", "domain")
-else:
-    origin = config.get("dev", "origin")
-    host = config.get("dev", "host")
-    domain = config.get("dev", "domain")
+env = config.get("app", "env")
+print("debug====>", debug)
+print("debug====>", debug,123)
+origin = config.get(env, "origin")
+host = config.get(env, "host")
+domain = config.get(env, "domain")
 Origin = origin
 Host = host
-DOMAIN = domain
 
 
 class JsonEncoder(json.JSONEncoder):
@@ -66,15 +63,16 @@ class GetOnlineData(object):
 
     def get_key_secret(self):
         # 获取抠图剩余次数
-        url = "{domain}/api/ai_image/client/get_key_serect".format(domain=DOMAIN)
+        url = "{domain}/api/ai_image/client/get_key_serect".format(domain=domain)
         _s = self.s.post(url=url, headers=self.post_headers, timeout=10)
         response_data = _s.json()
         return response_data["data"]
 
     def get_cutout_image_times(self):
         # 获取抠图剩余次数
+        print("domain", domain)
         url = "{domain}/api/ai_image/client/search_company_balance".format(
-            domain=DOMAIN
+            domain=domain
         )
         _s = self.s.post(url=url, headers=self.post_headers, timeout=10)
         response_data = _s.json()
@@ -85,7 +83,7 @@ class GetOnlineData(object):
 
     def search_progress(self, generate_ids):
         # 查进度
-        url = "{domain}/api/ai_image/client/search_progress".format(domain=DOMAIN)
+        url = "{domain}/api/ai_image/client/search_progress".format(domain=domain)
         data = {"generate_ids": generate_ids}
         _s = self.s.post(
             url=url, headers=self.post_headers, data=json.dumps(data), timeout=60
@@ -103,7 +101,7 @@ class GetOnlineData(object):
             return Image.open(BytesIO(pic))
 
     def remove_background(self, images_url):
-        url = "{domain}/api/ai_image/client/remove_background".format(domain=DOMAIN)
+        url = "{domain}/api/ai_image/client/remove_background".format(domain=domain)
         data = {"images": images_url}
         _s = self.s.post(
             url=url, headers=self.post_headers, data=json.dumps(data), timeout=30
@@ -124,7 +122,7 @@ class GetOnlineData(object):
             return _menu_dict
 
         url = "{domain}/api/backend/basic/get_current_menu".format(
-            domain=DOMAIN,
+            domain=domain,
         )
         Headers = {
             "Authorization": self.token,
@@ -173,7 +171,7 @@ class GetOnlineData(object):
         else:
             files = [("file", ("1.jpg", buffer, "image/{}".format("JPEG")))]
 
-        url = "{domain}/api/backend/upload".format(domain=DOMAIN)
+        url = "{domain}/api/backend/upload".format(domain=domain)
 
         headers = {
             "Authorization": self.token,
@@ -193,7 +191,7 @@ class GetOnlineData(object):
 
     def dispose_point(self, _type):
         # 扣分 sub;add为增加分数,每次操作一分
-        url = "{domain}/api/ai_image/client/dispose_point".format(domain=DOMAIN)
+        url = "{domain}/api/ai_image/client/dispose_point".format(domain=domain)
         data = {"type": _type}
         _s = self.s.post(
             url=url, headers=self.post_headers, data=json.dumps(data), timeout=10
@@ -203,7 +201,7 @@ class GetOnlineData(object):
 
     def send_message(self, text):
         # 发送钉钉消息
-        url = "{domain}/api/ai_image/client/send_message".format(domain=DOMAIN)
+        url = "{domain}/api/ai_image/client/send_message".format(domain=domain)
         data = {"message": text}
         _s = self.s.post(
             url=url, headers=self.post_headers, data=json.dumps(data), timeout=10