| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- # -*- coding: utf-8 -*-
- # Author : Charley
- # Python : 3.10.8
- # Date : 2025/6/11 18:59
- from loguru import logger
- from mysql_pool import MySQLConnectionPool
- # logger.remove()
- # logger.add("./logs/add_{time:YYYYMMDD}.log", encoding='utf-8', rotation="00:00",
- # format="[{time:YYYY-MM-DD HH:mm:ss.SSS}] {level} {message}",
- # level="DEBUG", retention="7 day")
- """
- C001000000,C开头到100万
- D000220000,D开头到22万
- E000050000,E开头到5万
- H000500000,H开头到50万
- L000400000,L开头到40万
- """
- start = 1
- sql_pool = MySQLConnectionPool(log=logger)
- # sql_kwd_list = sql_pool.select_all("select keyword from baocui_record")
- # sql_kwd_list = [i[0] for i in sql_kwd_list]
- # for prefix, end in [('C', 600001), ('D', 200001), ('E', 40001)]:
- for prefix, end in [('L', 400001)]:
- # if prefix == 'H':
- # start = 40001
- info_list = []
- for i in range(start, end):
- kwd = f"{prefix}{i:09d}"
- # if kwd in sql_kwd_list:
- # logger.info(f"{kwd}已存在")
- # continue
- info_list.append((kwd,)) # 添加元组格式以匹配参数化查询
- # print(info_list)
- # # 每10000条保存一次
- # if len(info_list) >= 10000:
- # sql_pool.insert_all("insert into baocui_task(keyword) values (%s)", info_list)
- # info_list.clear()
- #
- # # 处理剩余不足10000条的部分
- if info_list:
- sql_pool.insert_many(query="INSERT IGNORE INTO baocui_task(keyword) values (%s)", args_list=info_list, ignore=True)
- info_list.clear()
|