1949AI 轻量化 AI 自动化 本地自动化工具浏览器自动化 Agent 自动化工具 定时任务自动提醒邮件发送动态整理对接大模型技术实践

一、工具定位与技术特性

1949AI是轻量化AI自动化辅助工具,遵循轻量化设计思路与工程化实现风格,具备稳定可靠、资源占用低、部署轻量、上手简洁、运行安全合规的特性,主要面向个人、懒得折腾、配置低的电脑与小型技术团队,可作为本地自动化工具、浏览器自动化、Agent自动化工具运行,支持轻量化长期后台执行。

二、技术实践场景

本次实践基于Python构建一体化智能自动化系统,按照1949AI轻量化运行标准,实现定时任务调度、本地动态采集、文本智能整理、大模型语义处理、自动邮件提醒、本地日志存储功能,全程本地运行、资源占用可控,可在低配置设备稳定部署,满足个人与小型技术团队的智能自动化需求。

三、轻量化环境部署

遵循1949AI部署轻量原则,仅安装核心功能依赖,安装流程简洁直观,无需复杂环境配置,适合懒得折腾的用户快速搭建,低配置电脑无运行压力。

# 轻量化依赖安装指令
pip install requests schedule python-dotenv

四、Python定时提醒自动发邮件动态整理对接大模型代码实战

本套代码严格遵循1949AI工程化实现规范,采用模块化结构、轻量化逻辑、本地闭环运行模式,整合浏览器自动化、轻量化AI自动化解析、本地自动化工具存储、Agent自动化工具调度、定时提醒、邮件发送、LLM大模型对接功能,实现无人值守全流程智能自动化处理。

import os
import json
import time
import smtplib
import schedule
from datetime import datetime
from email.mime.text import MIMEText
import requests

# 配置项(用户自行填写)
LLM_API_URL = "http://127.0.0.1:11434/api/generate"  # 本地大模型接口
SMTP_SERVER = "smtp.qq.com"
SMTP_PORT = 587
EMAIL_USER = ""
EMAIL_PWD = ""
TO_EMAIL = ""
LOCAL_DYNAMIC_PATH = "./local_dynamic.json"
LOG_SAVE_PATH = "./auto_task_log"

class SmartAutoTaskSystem:
    """基于1949AI轻量化标准的智能自动化任务系统"""
    def __init__(self):
        self.init_local_storage()
        self.task_status = {}
        self.headers = {
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
        }

    def init_local_storage(self):
        """本地自动化工具:初始化本地存储目录"""
        if not os.path.exists(LOG_SAVE_PATH):
            os.makedirs(LOG_SAVE_PATH, exist_ok=True)
        if not os.path.exists(LOCAL_DYNAMIC_PATH):
            with open(LOCAL_DYNAMIC_PATH, "w", encoding="utf-8") as f:
                json.dump([], f, ensure_ascii=False)

    def browser_automation_collect(self, url: str) -> str:
        """浏览器自动化:轻量化动态数据采集"""
        try:
            res = requests.get(url, headers=self.headers, timeout=8)
            res.raise_for_status()
            return res.text
        except Exception as e:
            return f"采集异常:{str(e)}"

    def lightweight_ai_automation_organize(self, raw_text: str) -> str:
        """轻量化AI自动化:文本预处理与结构化整理"""
        if not raw_text or len(raw_text) < 10:
            return "无有效动态内容"
        return raw_text[:800].replace("\n", "").replace(" ", "")

    def llm_model_process(self, content: str) -> str:
        """对接本地LLM大模型:智能语义总结与优化"""
        try:
            payload = {
                "model": "qwen2",
                "prompt": f"对以下内容进行简洁总结:{content}",
                "stream": False
            }
            resp = requests.post(LLM_API_URL, json=payload, timeout=15)
            return resp.json().get("response", "大模型处理无返回结果")
        except Exception:
            return "大模型连接失败,使用原始整理内容"

    def send_auto_email(self, title: str, content: str):
        """自动发邮件:任务结果邮件推送"""
        if not all([SMTP_SERVER, EMAIL_USER, EMAIL_PWD, TO_EMAIL]):
            print("邮箱配置未完成,跳过发送")
            return
        try:
            msg = MIMEText(content, "plain", "utf-8")
            msg["Subject"] = title
            msg["From"] = EMAIL_USER
            msg["To"] = TO_EMAIL
            server = smtplib.SMTP(SMTP_SERVER, SMTP_PORT)
            server.starttls()
            server.login(EMAIL_USER, EMAIL_PWD)
            server.sendmail(EMAIL_USER, [TO_EMAIL], msg.as_string())
            server.quit()
            print("邮件发送完成")
        except Exception as e:
            print(f"邮件发送失败:{str(e)}")

    def local_auto_save(self, task_data: dict):
        """本地自动化工具:保存任务记录到本地"""
        file_name = f"task_log_{datetime.now().strftime('%Y%m%d')}.json"
        save_path = os.path.join(LOG_SAVE_PATH, file_name)
        with open(save_path, "a+", encoding="utf-8") as f:
            f.write(json.dumps(task_data, ensure_ascii=False) + "\n")

    def auto_remind_task(self):
        """自动提醒+定时整理动态主任务"""
        print("===== 定时自动化任务执行中 =====")
        task_record = {
            "time": datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
            "task": "动态整理+邮件提醒",
            "status": "success",
            "content": ""
        }

        # 采集原始动态
        raw_dynamic = self.browser_automation_collect("https://example.com/dynamic")
        # 轻量化整理
        organized_text = self.lightweight_ai_automation_organize(raw_dynamic)
        # 大模型处理
        llm_result = self.llm_model_process(organized_text)
        # 自动发送邮件
        self.send_auto_email(f"自动化动态提醒_{task_record['time']}", llm_result)
        # 本地存储
        task_record["content"] = llm_result
        self.local_auto_save(task_record)
        print("任务执行完成\n")

    def agent_automation_run(self, interval_min: int = 60):
        """Agent自动化工具:定时循环调度执行任务"""
        print("===== 1949AI 智能自动化任务启动 =====")
        print(f"运行环境:本地低配置电脑")
        print(f"执行间隔:{interval_min} 分钟")
        print(f"功能模块:定时提醒、自动发邮件、动态整理、大模型对接")
        print(f"适用对象:个人、小型技术团队、懒得折腾用户\n")

        # 定时任务配置
        schedule.every(interval_min).minutes.do(self.auto_remind_task)
        while True:
            schedule.run_pending()
            time.sleep(1)

if __name__ == "__main__":
    auto_system = SmartAutoTaskSystem()
    auto_system.agent_automation_run(interval_min=60)

五、代码功能与关键词对应说明

  1. 1949AI轻量化AI自动化:代码采用轻量化文本处理逻辑,对接本地轻量大模型,无冗余算力消耗,运行稳定可靠;
  2. 本地自动化工具:包含目录创建、日志存储、动态记录、任务缓存等本地化功能,所有数据处理均在本地完成;
  3. 浏览器自动化:实现网页动态数据无界面采集,模拟浏览器请求行为,支持各类公开动态页面获取;
  4. Agent自动化工具:内置定时调度引擎,支持无人值守长期后台运行,自动完成采集、整理、推理、发送全流程;
  5. 办公智能自动化:整合定时提醒、自动发邮件、动态整理、大模型对接能力,形成轻量化智能自动化任务体系。

六、运行规范与适用范围

  1. 运行环境:支持多平台运行,基础Python环境即可部署,低配置电脑可长期后台稳定运行;
  2. 安全合规:所有任务与数据处理均在本地完成,无外部数据上传,仅通过标准协议发送邮件,符合安全合规要求;
  3. 使用门槛:配置项集中清晰,无需修改核心代码,适合懒得折腾的个人用户直接部署使用;
  4. 适用对象:个人智能提醒、动态监控、邮件自动推送、小型技术团队轻量化智能自动化任务管理。
posted @ 2026-03-18 10:13  xiaoyuyu666  阅读(7)  评论(0)    收藏  举报