Prechádzať zdrojové kódy

MySQL 服务
异步化 v0.1开发上线

罗俊辉 1 rok pred
rodič
commit
b0921f2a68

+ 0 - 15
Dockerfile

@@ -1,15 +0,0 @@
-FROM registry.cn-hangzhou.aliyuncs.com/stuuudy/cyber-crawler-base:latest
-
-WORKDIR /cyber_ossupload
-
-COPY . .
-
-ENV TZ=Asia/Shanghai
-
-#RUN pip   install -r requirements.txt  -i "https://pypi.tuna.tsinghua.edu.cn/simple/"
-
-RUN pip   install -r requirements.txt
-
-# 6、运行服务
-CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "9091"]
-

+ 1 - 2
applications/match_alg/__init__.py

@@ -1,5 +1,4 @@
 """
 @author: luojunhui
 匹配算法
-"""
-from .rank import best_choice
+"""

+ 8 - 5
applications/routes.py

@@ -4,6 +4,7 @@
 import json
 import time
 import uuid
+import asyncio
 from quart import Blueprint, jsonify, request
 
 from applications.functions.log import logging
@@ -72,11 +73,13 @@ def Routes(mysql_client):
                 WHERE trace_id = '{trace_id}';
             """
             await mysql_client.async_insert(update_kimi_sql)
-            await search_videos(
-                kimi_info=kimi_info,
-                trace_id=trace_id,
-                gh_id=gh_id,
-                mysql_client=mysql_client
+            asyncio.ensure_future(
+                search_videos(
+                    kimi_info=kimi_info,
+                    trace_id=trace_id,
+                    gh_id=gh_id,
+                    mysql_client=mysql_client
+                )
             )
             res = {
                 "status": "success",

+ 0 - 86
applications/schedule/main_schedule.py

@@ -1,86 +0,0 @@
-# encoding: utf-8
-"""
-@author: luojunhui
-"""
-
-import time
-import requests
-
-
-class AskForInfo:
-    """
-    Ask user to enter their info
-    """
-    def __init__(self, params):
-        self.params = params
-        self.base_url = "http://localhost:8111"
-
-    async def search_request(self):
-        """
-        请求下载外部视频
-        :return:
-        """
-        url = "{}/title_to_search".format(self.base_url)
-        res = requests.post(url, json=self.params, timeout=120)
-        return res.json()
-
-    async def ask_for_info(self, res_obj, kt):
-        """
-        :param kt:
-        :param res_obj:
-        :return:
-        """
-        traceId = res_obj["trace_id"]
-        video_list = res_obj["video_list"]
-        url = "{}/find_video".format(self.base_url)
-        body = {
-            "accountName": self.params['accountName'],
-            "content": self.params['content'],
-            "cover": self.params['cover'],
-            "ghId": self.params['ghId'],
-            "title": self.params['title'],
-            "traceId": traceId,
-            "kimi_title": kt,
-            "videoList": video_list
-        }
-        res = requests.post(url, json=body, timeout=120)
-        return res.json()
-
-    async def schedule(self):
-        """
-
-        :return:
-        """
-        a = time.time()
-        res = await self.search_request()
-        b = time.time()
-        print("search_time:\t", b - a)
-        if res['code'] == 0:
-            trace_id = res["trace_id"]
-            kimi_title = res['kimi_title']
-            video_id = res['search_video_id']
-            video_url = res['video_url']
-            res_obj = {
-                "search_videos": "success" if video_id else "fail",
-                "trace_id": trace_id,
-                "video_list": [video_id] if video_id else [],
-                "video_url": [video_url] if video_url else ""
-            }
-            time.sleep(2)
-            final_obj = await self.ask_for_info(res_obj=res_obj, kt=kimi_title)
-            e = time.time()
-            print("Rank and Return Time:\t", e - b - 2)
-            if final_obj['videoUrl']:
-                return final_obj
-            else:
-                final_obj["videoUrl"] = video_url
-                return final_obj
-        elif res['code'] == 1:
-            return {
-                "Error": res['message']
-            }
-        else:
-            return {
-                "Error": "Unknown Error"
-            }
-

+ 2 - 1
applications/schedule/process_schedule.py

@@ -61,7 +61,8 @@ async def recall_videos(trace_id, mysql_client):
         update_result_sql = f"""
             UPDATE long_articles_video_dev
             SET
-                result1 = '{json.dumps(result, ensure_ascii=False)}'
+                result1 = '{json.dumps(result, ensure_ascii=False)}',
+                success = 1
             WHERE
                 trace_id = '{trace_id}'
         """

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 0 - 9
dev/test.py


+ 1 - 1
dev/test_search.py

@@ -3,7 +3,7 @@
 """
 from applications.search import *
 
-keys = "湖人大战勇士"
+keys = "拜登政策"
 
 wx_result = wx_search(keys)
 print(wx_result)

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 25 - 0
dev/test_v2.py


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 1 - 6
dev/title_to_search.py


Niektoré súbory nie sú zobrazené, pretože je v týchto rozdielových dátach zmenené mnoho súborov