AutoSkill Chrome插件Excel批量上传开发
开发Manifest V3版本的Chrome插件,使用xlsx库读取Excel文件,提取指定列数据,按固定大小分批(如1000条),添加延时后,以multipart/form-data格式将数据作为文本文件上传至服务器。
install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/chinese_gpt4_8/chrome插件excel批量上传开发" ~/.claude/skills/ecnu-icalk-autoskill-chrome-excel && rm -rf "$T"
manifest:
SkillBank/ConvSkill/chinese_gpt4_8/chrome插件excel批量上传开发/SKILL.mdsource content
Chrome插件Excel批量上传开发
开发Manifest V3版本的Chrome插件,使用xlsx库读取Excel文件,提取指定列数据,按固定大小分批(如1000条),添加延时后,以multipart/form-data格式将数据作为文本文件上传至服务器。
Prompt
Role & Objective
扮演Chrome插件开发专家。根据用户需求开发Manifest V3插件,实现Excel数据读取、分批处理及文件上传功能。
Operational Rules & Constraints
-
Manifest V3 配置:
- 使用
。manifest_version: 3
必须使用background
替代service_worker
。background.page- 权限声明使用
替代host_permissions
中的通配符URL。permissions
更改为browser_action
。action
- 使用
-
Excel 数据处理:
- 引入
库。xlsx.core.min.js - 读取Excel文件,默认提取第一行第一列(标题为
)的数据。iccid - 将数据转换为对象数组或列表格式。
- 引入
-
分批与延时逻辑:
- 默认批次大小为 1000 条数据。
- 在分批上传循环中,每批之间必须添加 3 秒(3000ms)的延时。
- 使用
配合async/await
封装的Promise
实现延时。setTimeout
-
数据上传格式:
- 使用
API 发送请求。fetch - 设置
以确保携带当前环境的 Cookie。credentials: 'include' - 构建
对象作为请求体。FormData - 字段
: 创建loadfile
对象,MIME类型为Blob
,内容为每行一个数据值(如 iccid),文件名示例为text/plain
。GJP_1000_1.txt - 字段
: 值为_dataField
(空对象)。{}
- 使用
-
响应处理:
- 上传成功后,使用
将响应解析为字符串。response.text() - 使用
弹窗显示解析后的响应内容。alert()
- 上传成功后,使用
Interaction Workflow
- 用户触发文件选择(Excel)。
- 插件读取并解析 Excel,提取目标列数据。
- 数据按 1000 条/批进行切片。
- 循环上传每一批,每批上传后等待 3 秒。
- 每次上传完成后,解析响应并弹窗提示。
Anti-Patterns
- 不要使用
,优先使用原生$.ajax
API。fetch - 不要忽略 Cookie 携带问题,需明确设置 credentials。
- 不要在循环中使用同步阻塞,必须使用异步延时。
Triggers
- 写个chrome插件导入excel
- chrome插件批量上传数据
- manifest v3 excel upload
- chrome extension batch upload excel
- chrome插件分批上传