Skip to content

附录

字数
1582 字
阅读时间
7 分钟

附录A 系统主要模块功能与设计思路(框图)

A.1 系统模块框图

┌─────────────────────────────────────────────────────────────────┐
│                         前端表现层                               │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐  ┌─────────┐ │
│  │ 数据源配置  │  │ 目标表单配置│  │ 映射展示修正│  │结果导出 │ │
│  └─────────────┘  └─────────────┘  └─────────────┘  └─────────┘ │
└───────────────────────────────┬─────────────────────────────────┘
                                │ HTTP/JSON
┌───────────────────────────────▼─────────────────────────────────┐
│                    后端业务层 (FastAPI)                          │
│  ┌─────────────────┐  ┌─────────────────┐  ┌─────────────────┐  │
│  │ 数据接入与清洗  │  │ 字段智能匹配    │  │ 表单自动填充    │  │
│  │ 服务模块        │  │ 服务模块        │  │ 服务模块        │  │
│  └────────┬────────┘  └────────┬────────┘  └────────┬────────┘  │
└───────────┼─────────────────────┼─────────────────────┼──────────┘
            │                     │                     │
┌───────────▼─────────────────────▼─────────────────────▼──────────┐
│                        服务与数据层                              │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────┐ │
│  │Excel读取 │ │SQL解析  │ │网页抓取  │ │数据清洗  │ │选项匹配│ │
│  └──────────┘ └──────────┘ └──────────┘ └──────────┘ └────────┘ │
│  ┌────────────────────────────────────────────────────────────┐  │
│  │           LangChain智能体 + 通义千问大语言模型              │  │
│  └────────────────────────────────────────────────────────────┘  │
│  ┌────────────────────────────────────────────────────────────┐  │
│  │                 Selenium 浏览器自动化驱动                   │  │
│  └────────────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────────┘

A.2 模块功能与设计思路

模块名称主要功能设计思路
数据接入与清洗模块读取Excel文件、SQL文件、网页表格,统一转换为DataFrame,并进行列名清理、删除空行/重复行、字符串标准化等清洗操作。采用Pandas作为核心数据处理库,针对不同数据源设计专门读取工具(ExcelReadToolSQLFileToolWebScraperTool),清洗过程通过DataCleanerTool封装,保证数据质量。
字段智能匹配模块提取源数据列信息(列名、类型、示例值)和目标表单字段信息(字段名、标签、类型、选项),调用大语言模型推理字段映射关系,输出带置信度的推荐映射。基于LangChain框架构建智能体(Agent),注册analyze_source_columnsanalyze_target_fields两个工具,强制模型先获取信息再推理,确保匹配准确性;失败时降级为子串规则匹配。
表单自动填充模块根据用户确认的映射关系转换源数据,驱动Selenium浏览器自动打开目标网页,逐条填写表单控件(文本框、下拉框、单选/复选框等)。采用四级递进定位策略(name→id→placeholder→label关联),针对下拉/复选框设计多级选项匹配(大模型→同义词→编辑距离);每条记录填充后保持浏览器打开供用户检查。
前端交互模块提供可视化操作界面,包括数据源上传与预览、目标表单解析与展示、映射推荐展示与手动修正、填充执行与结果导出。基于Vue.js构建单页应用,利用响应式数据绑定和条件渲染(v-if)实现步骤化引导;置信度以绿/黄/红三色标注,用户可通过下拉框调整映射。
结果导出模块将填充结果数据导出为Excel或CSV文件,供用户下载保存。使用Pandas的to_excel()to_csv()方法生成文件,通过FastAPI的FileResponse返回给前端,下载后自动清理临时文件。

附录B 程序中的主要符号和变量说明

符号/变量类型含义
source_typestring源数据类型,取值为 "excel""sql""url"
source_previewobject源数据预览信息,包含 columnssampleshapedtypes
target_fields_infoarray目标表单字段列表,每个字段含 labelnametypeoptions
mapping_pairsarray用户确认的字段映射对列表,每个元素包含 targetNamesourceconfidence
recommended_mappingobject大模型推荐的映射关系,键为目标字段名,值为源列名
confidence_scoresobject每条映射的置信度分数,取值范围 0~1
temperaturefloat大模型生成随机性参数,本系统设置为 0.1
dfDataFramePandas DataFrame,存储源数据或填充后的结果数据
driverWebDriverSelenium浏览器驱动实例,用于控制Firefox
fields_infoarray传递至填充模块的目标字段完整信息,辅助定位与选项匹配
fill_resultobject填充执行结果,包含 successmessagefilled_count

附录C 软件使用说明

C.1 环境准备

  1. 安装 Python 3.10+,进入 backend 目录执行 pip install -r requirements.txt 安装依赖。
  2. backend 目录下创建 .env 文件,配置阿里云百炼API Key:
    DASHSCOPE_API_KEY=sk-xxxxxxxxxxxxxxxxxxxx
    QWEN_MODEL_NAME=qwen-turbo
    QWEN_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
  3. 安装 Firefox 浏览器,并下载匹配版本的 geckodriver.exe,放置于项目根目录 WebFill 下。
  4. 启动后端服务:cd backend,执行 uvicorn main:app --reload --port 8000
  5. 用浏览器打开 frontend/index.html 即可使用。

C.2 使用步骤

  1. 上传源数据:在“上传源数据”区域选择数据来源类型(Excel / SQL文件 / 网页表格URL),上传文件或输入URL,点击“加载源数据”。系统解析后显示数据预览。
  2. 配置目标表单:在“目标网页表单”区域输入目标网页URL,点击“解析目标表单”。系统提取表单字段并展示。
  3. 获取映射推荐:点击“获取智能映射推荐”,系统调用大模型生成字段映射,以表格形式展示,并用绿/黄/红三色标注置信度。
  4. 调整映射(可选):用户可通过每行右侧的下拉框手动修改或取消映射关系。
  5. 执行填充:点击“确认填充”,系统自动打开Firefox浏览器,将源数据逐条填入目标表单。每条填充完成后浏览器保持打开,供用户检查;手动关闭浏览器后继续下一条。
  6. 导出结果:填充完成后,点击“导出为Excel”或“导出为CSV”下载结果文件。

C.3 注意事项

  • 批量填充最多支持5条记录(可配置),超出会提示限制。
  • 填充时请勿手动操作浏览器,以免干扰自动填充流程。
  • 若大模型API不可用,系统将自动降级为规则匹配(子串包含),用户仍可手动调整映射。
  • 目标网页加载较慢时,系统已设置超时等待(30秒),请耐心等待。

贡献者

The avatar of contributor named as freeway348 freeway348

文件历史

撰写