import arlo

This commit is contained in:
konjacpotato
2025-11-05 21:00:19 +08:00
commit 2c8426d543
69 changed files with 789 additions and 0 deletions

View File

View File

@ -0,0 +1,38 @@
from channel.toutiao.toutiao import Toutiao
from database.database import get_session
from database.tcontentdispatch.curd import get_recent_24_hours_content_to_dispatch
from database.tscheduler.model import TScheduler
from database.ttaskqueue.curd import create_task
from database.ttaskqueue.model import TTaskQueue
from log.log_manager import log
from task.manager_task import execute_task
def article_publish():
# 1. 从数据库获取文章
with get_session() as db:
# 2. 获取所有未发布的文章
article = get_recent_24_hours_content_to_dispatch(db, '新鲜事')
if article:
# 3. toutiao发布文章
toutiao = Toutiao(article)
toutiao.publish()
# 4. 打印日志
log(f'publish article {article.title} to toutiao success with article id: {article.id} and article time: {article.get_creation_date_in_localtime()}')
def article_publish_task():
execute_task(article_publish)
def article_publish_use_task_queue(scheduler: TScheduler):
with get_session() as db:
task = TTaskQueue()
task.task_name = 'toutiao_article_publish'
task.module_path = scheduler.module_path
task.function_name = scheduler.handler
task.scheduler = scheduler.task_name
create_task(db, task)
if __name__ == '__main__':
article_publish_task()