feat: 优化DB.py中的视频记录字段,移除冗余字段并调整字段逻辑
This commit is contained in:
parent
6d102f9e84
commit
1e38b31e60
23
DB.py
23
DB.py
@ -52,12 +52,9 @@ video_op = Table("sh_dm_video_op_v3", _meta,
|
||||
video = Table("sh_dm_video_v3", _meta,
|
||||
Column("id", Integer, primary_key=True, autoincrement=True),
|
||||
Column("v_id", String(64)),
|
||||
Column("v_xid", String(64)),
|
||||
Column("rn", String(50)),
|
||||
Column("v_name", String(255), nullable=False),
|
||||
Column("v_xid", String(64), nullable=False),
|
||||
Column("title", String(255), nullable=False),
|
||||
Column("link", String(255), nullable=False),
|
||||
Column("is_piracy", Integer, default=3),
|
||||
Column("edition", String(255), default=''),
|
||||
Column("duration", String(11), default='0'),
|
||||
Column("watch_number", Integer, default=0),
|
||||
@ -66,17 +63,14 @@ video = Table("sh_dm_video_v3", _meta,
|
||||
Column("public_time", DateTime),
|
||||
Column("cover_pic", String(255)),
|
||||
Column("sort", Integer),
|
||||
Column("history_status", String(255)),
|
||||
Column("u_xid", String(64)),
|
||||
Column("u_id", String(100)),
|
||||
Column("u_pic", String(255)),
|
||||
Column("u_name", String(255)),
|
||||
Column("status", Integer, default=1),
|
||||
Column("ts_status", Integer, default=1),
|
||||
Column("createtime", Integer),
|
||||
Column("updatetime", Integer),
|
||||
Column("is_repeat", Integer, default=0),
|
||||
Column("operatetime", Integer),
|
||||
Column("createtime", Integer, default=0),
|
||||
Column("updatetime", Integer, default=0),
|
||||
Column("operatetime", Integer, default=0),
|
||||
)
|
||||
# 作者表
|
||||
video_author = Table(
|
||||
@ -717,7 +711,6 @@ class DBSA:
|
||||
logger.debug(f"跳过重复视频记录: {vid_index_key}")
|
||||
return
|
||||
|
||||
# 操作记录表
|
||||
op_row = {
|
||||
"v_id": data["v_id"],
|
||||
"v_xid": data["v_xid"],
|
||||
@ -736,7 +729,6 @@ class DBSA:
|
||||
"ts_status": data.get("ts_status", 1),
|
||||
}
|
||||
|
||||
# 视频表
|
||||
vid_row = {
|
||||
"v_id": data["v_id"],
|
||||
"v_xid": data["v_xid"],
|
||||
@ -758,11 +750,10 @@ class DBSA:
|
||||
"watch_number": data.get("view", 0),
|
||||
"follow_number": data.get("fans", 0),
|
||||
"video_number": data.get("videos", 0),
|
||||
"is_repeat": 3,
|
||||
"ts_status": data.get("ts_status", 1),
|
||||
}
|
||||
|
||||
# 仅保留 sh_dm_video_v3 表中存在的字段
|
||||
# 只保留 video 表中合法字段
|
||||
video_fields = {c.name for c in video.columns}
|
||||
vid_row = {k: v for k, v in vid_row.items() if k in video_fields}
|
||||
|
||||
@ -792,7 +783,6 @@ class DBSA:
|
||||
if not op_rows and not vid_rows:
|
||||
return
|
||||
|
||||
# ====== 写作者表 ======
|
||||
authors_map = {}
|
||||
now_ts = int(time.time())
|
||||
for data in payloads:
|
||||
@ -832,7 +822,6 @@ class DBSA:
|
||||
cls.push_record_many(payloads)
|
||||
return
|
||||
|
||||
# ====== 写操作记录表(UPSERT)======
|
||||
if op_rows:
|
||||
try:
|
||||
stmt = mysql_insert(video_op).values(op_rows)
|
||||
@ -850,7 +839,6 @@ class DBSA:
|
||||
cls.push_record_many(payloads)
|
||||
return
|
||||
|
||||
# ====== 写视频表(UPSERT)======
|
||||
if vid_rows:
|
||||
try:
|
||||
stmt = mysql_insert(video).values(vid_rows)
|
||||
@ -873,7 +861,6 @@ class DBSA:
|
||||
"ts_status": stmt.inserted.ts_status,
|
||||
"updatetime": stmt.inserted.updatetime,
|
||||
"operatetime": stmt.inserted.operatetime,
|
||||
"is_repeat": stmt.inserted.is_repeat,
|
||||
}
|
||||
ondup = stmt.on_duplicate_key_update(**upd)
|
||||
with _engine.begin() as conn:
|
||||
|
Loading…
x
Reference in New Issue
Block a user