Skip to main content

qianniu-listing

Taobao/Tmall 千牛 listing (商品) CRUD via the Excel bulk round trip — 商品管理 → 更多批量操作 → excel商品批量导出 (export) → edit the workbook → excel商品批量编辑 / 批量导入 (import). One round trip creates/edits many 商品 at once (price, stock, title, attributes). Load before any browser-use action that lists, edits, prices, restocks, or bulk-updates 商品 on a 千牛 store. Prefer this bulk flow over per-item clicking; the single-item 发布商品 wizard is the fallback. Requires qianniu-shared for login + navigation.

Ir para a instalação

Informações da origem

Repositório
zpoint/vibe-seller
Última atividade na origem
3 de julho de 2026 às 16:13
Idioma detectado do SKILL.md
inglês
Estrelas
68
Forks
14

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
3 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
qianniu-listing
description
Taobao/Tmall 千牛 listing (商品) CRUD via the Excel bulk round trip — 商品管理 → 更多批量操作 → excel商品批量导出 (export) → edit the workbook → excel商品批量编辑 / 批量导入 (import). One round trip creates/edits many 商品 at once (price, stock, title, attributes). Load before any browser-use action that lists, edits, prices, restocks, or bulk-updates 商品 on a 千牛 store. Prefer this bulk flow over per-item clicking; the single-item 发布商品 wizard is the fallback. Requires qianniu-shared for login + navigation.
allowed-tools
Bash(browser-use:*)
requires
["qianniu-shared"]
# Qianniu (Taobao/Tmall) — Listing CRUD (Excel bulk round trip) > **PREREQUISITE:** `../qianniu-shared/SKILL.md` (chrome login is a HUMAN > step; the popup-close rule; page map; per-store download dir; GB18030 CSV; > the 0.13 heredoc CLI + `cdp()`-not-in-`js()` gotcha). 千牛 **商品管理** has a first-class **Excel bulk** surface — the batch equivalent of the per-item 发布/编辑 wizard, and the default for touching more than one 商品. Entry point (verified live 2026-07-03): 商品管理 (`https://myseller.taobao.com/home.htm/SellManage/on_sale`) → **更多批量操作** → | Menu item | Purpose | |---|---| | **excel商品批量导出** | **download** the selected/all 商品 as an `.xlsx` workbook | | **excel商品批量编辑** | download the editable workbook (edit → re-upload) | | **批量导入** | **upload** the edited workbook to apply changes | | 批量编辑商品属性 / 批量设置运费 | scoped batch edits (attributes / shipping) | ## Work it like a human: export → inspect → edit → import → verify The workbook's exact columns are **category-specific and change over time** — do NOT hardcode them. Run the loop a human runs (same philosophy as `amazon-listing`): 1. **Export a fresh workbook** (`excel商品批量导出`) for the target 商品. It lands in `~/.vibe-seller/downloads/<slug>/`. 2. **`inspect` it** — `listing_bulk.py inspect WORKBOOK.xlsx` dumps the header row + the columns actually present (商品ID, 商品标题, 价格, 库存, the SKU sub-table, etc.). The header names are the ground truth, not this doc. 3. **`fill`** — set values **by header name** for the rows you're changing (`listing_bulk.py fill … --spec spec.json --out out.xlsx`). Touch only the columns you mean to change; leave the rest as exported. 4. **Import** the edited workbook (`批量导入`) — **a WRITE; only after the user has reviewed the diff.** Then read the import result. 5. **Verify on the source of truth, not the submit toast:** re-open 商品管理 (or the 商品 detail) and confirm the change landed. Import results also surface a per-row success/failure list — read it and fix exactly the rows/ fields it flags, then re-import (self-correct loop). > **Read-only vs write.** Export + inspect + verify are reads. **Import > (`批量导入`) is a write** — surface the intended change for the user to > review before uploading; never auto-import. ## The script ```bash S=<skills>/qianniu-listing/scripts PY=<project-venv>/bin/python3 # needs openpyxl ``` - **`listing_bulk.py`** — header-keyed Excel round-trip helper (locale-robust: keys by the export's own column headers, never by position): - `inspect WORKBOOK.xlsx` — find the header row, dump every column name + the row count; flags the identity column (商品ID/宝贝ID) and the SKU sub-table. - `fill WORKBOOK.xlsx --spec SPEC.json --out OUT.xlsx` — for each spec row (matched by 商品ID), set the named columns; preserve every other cell verbatim so the import only changes what you intended. - `parse-import RESULT.xlsx` — summarise the import result workbook into per-row 成功/失败 + the failure reason (the self-correct signal). `SPEC.json` shape (values keyed by the workbook's **own** header names, from `inspect`; use realistic placeholders — never a real 商品ID/SKU/brand): ```json { "rows": [ { "商品ID": "600000000001", "fields": { "价格": "199.00", "库存": "50" } }, { "商品ID": "600000000002", "fields": { "价格": "89.00" } } ] } ``` ## Single-item fallback For a one-off change with no bulk column, use the UI: 商品管理 → the row's 编辑, or 发布商品 for a new 商品 (a multi-step wizard). Drive it with the 0.13 CLI (`click_at_xy` after a screenshot; `js(...)` to read state) per `qianniu-shared`. Still a **write** → user review first. ## What this skill is NOT - Not ads — that's `qianniu-ads` (万相台无界). - Not 生意参谋 (sycm) retail reports — a separate concern (no skill ships for it yet). - Never auto-imports or publishes; the human reviews every write.
Ver no GitHub