DailyMotion/dump_keyword_title.py

43 lines
1.1 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import json, time
import argparse
from DB import DBVidcon
def parse_args():
parser = argparse.ArgumentParser(
description="Dump keyword/title rows into Redis list."
)
parser.add_argument("-l", "--level", type=int, default=99,
help="value for t.level (default: 99)")
return parser.parse_args()
def main():
args = parse_args()
batch = int(time.time())
db = DBVidcon()
rows = db.fetch_keyword_title(level=args.level)
payload_list = []
push = None
if args.level == 0:
push = db.push_l0
elif args.level == 1:
push = db.push_l1
elif args.level == 9:
push = db.push_l2
else:
return
for row in rows:
payload_list.append(json.dumps({**row, "batch": batch}, ensure_ascii=False))
if len(payload_list) >= 10000:
push(payload_list)
payload_list.clear()
if payload_list: # 收尾
push(payload_list)
print(f"✔ 推送 {len(rows)}batch={batch})到 {push.__name__}队列完毕")
db.close()
if __name__ == "__main__":
main()