xianyu-query
v0.2.0
Published
一个基于用户提供 Cookie 的闲鱼关键词查询 CLI,支持登录会话导入、搜索、导出与退出。
Downloads
23
Maintainers
Readme
2-taobao-query-skills
一个基于用户提供基础 Cookie 的闲鱼关键词查询 CLI。
功能说明
- 支持导入用户从闲鱼网页拿到的基础 Cookie
- 自动把可用会话保存到
session.json - 自动通过
mtop.gaia.nodejs.gaia.idle.data.gw.v2.index.get补齐_m_h5_tk / _m_h5_tk_enc - 在查询时直接用 Node 请求闲鱼搜索接口,不依赖浏览器自动化
- 支持
login / query / export / logout - 支持单关键词、多关键词、完整结果和 CSV / JSON 导出
安装
本地开发直接运行:
node ./bin/2-taobao-query-skills.cjs --help发布到 npm 后可以直接使用:
npm install -g xianyu-query
xianyu-query --help发布前建议
先本地执行:
npm test然后按常规 npm 流程发布:
npm version patch
npm publish如果只是本地调试 CLI:
npm run cli -- --help命令列表
xianyu-query login --cookie '<cookie>' [--session session.json] [--query codex] [--raw] [--json]
xianyu-query query [--cookie '<cookie>'] [--session session.json] [--full] [--raw] [--csv|--json|--pretty] <关键词...>
xianyu-query export [--cookie '<cookie>'] [--session session.json] --output results.csv [--full] [--raw] [--csv|--json|--pretty] <关键词...>
xianyu-query logout [--session session.json]
xianyu-query <关键词...>首次初始化会话
如果本地还没有可用会话,先在浏览器打开:
https://www.goofish.com/search?q=codex&spm=a21ybx.search.searchInput.0然后把页面里的基础 Cookie 传给 CLI。这里不要求你手工带上 _m_h5_tk / _m_h5_tk_enc,CLI 会在首次请求时自动补齐:
xianyu-query login \
--cookie '<document.cookie 或请求头 cookie>' \
--query codex执行成功后,会自动生成并刷新本地 session.json。默认只输出:
登录成功后续查询一般不需要再次提供 Cookie。
基础 Cookie 说明
通常下面这些基础字段已经足够完成自举:
cookie2cnat_tb_token_tfstk
其他账号态字段如果有,也建议一并传入。
不需要你手动准备:
_m_h5_tk_m_h5_tk_encmtop_partitioned_detect
这些会由脚本在首次 bootstrap 时自动拿到并写入本地会话。
常用用法
单关键词查询:
xianyu-query codex或者显式写法:
xianyu-query query codex多关键词查询:
xianyu-query query \
小红薯 business 酒店输出第一页全部结果:
xianyu-query query --full \
codex把结果写入文件:
xianyu-query export \
--full --output results.csv \
小红薯 business 酒店使用单独的会话文件:
xianyu-query query \
--session /tmp/2taobaoquery-session.json \
codex退出并删除本地会话:
xianyu-query logout --session /tmp/2taobaoquery-session.json返回内容
默认输出为 CSV 文本,更适合终端直接查看。列包括:
querypageNumberstatusnumFoundsearchIdrnitemCountitemIdcategoryIdpriceareatitleurlfailure
使用 --full 后,会输出当前第一页的全部 30 条商品;不加时默认输出前 5 条。
如果你要给脚本或其他程序消费输出,可以加:
xianyu-query query --json codex其中:
--csv:CSV 文本,适合终端直接读,默认值--json:单行 JSON,适合脚本读取--pretty:格式化 JSON,适合人工排查
注意事项
- 默认会话文件是仓库根目录下的
session.json - 如果返回
RGV587_ERROR::SM,说明当前基础会话被风控拦截,需要重新导入新的浏览器 Cookie - 当前脚本只抓每个关键词的第一页结果,不自动翻页
