From da353920ae1f2f3bcf25f9536274621b988ea790 Mon Sep 17 00:00:00 2001 From: Franklin-F Date: Thu, 12 Jun 2025 22:48:55 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0fight=5Frecord=5Fstat?= =?UTF-8?q?us=E6=96=B9=E6=B3=95=E4=BB=A5=E6=94=AF=E6=8C=81=E6=8A=A5?= =?UTF-8?q?=E5=91=8AID=E3=80=81=E6=8A=A5=E5=91=8A=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=92=8C=E5=90=8E=E7=BB=AD=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DB.py | 11 ++++++++--- report.py | 10 ++++++++-- report_video.py | 4 ++-- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/DB.py b/DB.py index 8423ebe..73a2b89 100644 --- a/DB.py +++ b/DB.py @@ -329,19 +329,24 @@ class DBVidcon: return self.cursor.fetchall() @mysql_retry() - def update_fight_record_status(self, record_id: int, new_status: int, errinfo: str = ""): + def update_fight_record_status(self, id: int, report_id: int, new_status: int, errinfo: str = "", + report_time: int = 0, + subsequent_status: int = 1, ): sql = """ UPDATE sh_dm_fight_records SET status = %s, errinfo = %s, - updata_time = %s + updata_time = %s, + report_id = %s, + subsequent_status = %s, + report_time= %s WHERE id = %s """ now_ts = int(time.time()) - self.cursor.execute(sql, (new_status, errinfo, now_ts, record_id)) + self.cursor.execute(sql, (new_status, errinfo, now_ts, report_id, subsequent_status, report_time, id)) @mysql_retry() def update_video_ts_status(self): diff --git a/report.py b/report.py index b0b1e5c..fc6b08c 100644 --- a/report.py +++ b/report.py @@ -7,6 +7,11 @@ import logger db = DBVidcon() d = DailymotionClient() +k = { + "open":1, + "solved":2, + "awaiting your reply":3, +} while True: lis = db.get_report_video() if len(lis) == 0: @@ -15,8 +20,9 @@ while True: for li in lis: logger.logger.info(f"name:{li['name_title']},link:{li['link']} ") try: - info = d.process_ticket(li['name_title'], li['link']) - db.update_fight_record_status(li['id'], 2, f"http://123.58.197.91:5000/image/{info}") + info,report_id,status,report_ts, = d.process_ticket(li['name_title'], li['link']) + subsequent_status = k.get(status, 1) + db.update_fight_record_status(li['id'],report_id, 2, f"http://123.58.197.91:5000/image/{info}", report_ts, subsequent_status) db.flush() time.sleep(5 * 60) except Exception as e: diff --git a/report_video.py b/report_video.py index c959ebc..d56bef7 100644 --- a/report_video.py +++ b/report_video.py @@ -100,7 +100,7 @@ class DailymotionClient: self._pw = sync_playwright().start() self.browser: Browser = self._pw.chromium.launch( headless=self.headless, - proxy={'server':'http://127.0.0.1:7890'} + proxy={'server': 'http://127.0.0.1:7890'} ) self.context = self.browser.new_context( user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) " @@ -264,7 +264,7 @@ class DailymotionClient: if self.page.url != self.url: self.page.goto(self.url, timeout=30000) - return file_path + return file_path, report_id, subsequent_status, timestamp def close(self): try: