Files
lm_code/推特/db_init.py
2026-01-15 13:43:12 +08:00

48 lines
1.3 KiB
Python

from loguru import logger
from bit_tools import get_browser_lists_Browser, get_group_lists
from models import db1
from models.ips import Ips
from models.xstart import Xstart
from models.xtoken import XToken
def ensure_tables():
db1.connect(reuse_if_open=True)
try:
db1.create_tables([XToken, Xstart, Ips], safe=True)
finally:
if not db1.is_closed():
db1.close()
def sync_xstart_from_bitbrowser(group_name="推特", max_pages=10):
fz_datas = get_group_lists()
if group_name not in fz_datas:
logger.error(f"未找到分组:{group_name}")
return
group_id = fz_datas[group_name]
created = 0
scanned = 0
db1.connect(reuse_if_open=True)
try:
for page in range(max_pages):
browser_list = get_browser_lists_Browser(id=group_id, page=page)
if not browser_list:
break
for browser in browser_list:
scanned += 1
_, is_created = Xstart.get_or_create(
bit_id=browser.get("id"),
)
if is_created:
created += 1
finally:
if not db1.is_closed():
db1.close()
logger.info(f"已扫描 {scanned} 个浏览器配置,写入 Xstart {created}")