yahoo-store-profit-finder
tamacolet/yahoo-store-profit-finder-skill|
6 stars
3 forks
JavaScript
25 views
SKILL.md
name: yahoo-store-profit-finder description: | Yahooショッピングのストア(ヤマダデンキ含む)をHTMLのみでスクレイピングし、 価格・ポイント・実質価格・JANを取得して、morimori-kaitori.jpの買取価格と照合し 利益が出る商品を抽出するスキル。Yahoo APIは使わない。 Use when: 「Yahooストア利益計算」「ヤマダデンキ利益商品」「価格/ポイント/JAN取得」
Yahoo Store Profit Finder
Yahooショッピングのストア検索ページと商品詳細ページをHTMLのみで解析し、
価格 / ポイント / 実質価格 / JAN を取得して、https://www.morimori-kaitori.jp/search と照合する。
ワークフロー
- ストア検索ページ(
/search.html)から商品URLを抽出 - 商品詳細ページの
__NEXT_DATA__から以下を取得
item.applicablePrice(価格)point.totalPoint(ポイント)item.janCode(JAN)
実質価格 = 価格 - ポイントを計算- JAN優先で
morimori-kaitoriを検索し、通常/ゆとり/預かり価格を取得 利益 = 買取価格 - 実質価格で利益候補を抽出
実行
pnpm exec node /Users/t/.claude/skills/yahoo-store-profit-finder/scripts/yahoo-store-profit-scan.mjs \
--store yamada-denki \
--keyword "WF-1000XM5" \
--pages 2 \
--max-items 40 \
--mode normal \
--min-profit 1000 \
--json /tmp/yahoo-profit.json
主なオプション
--store必須。YahooストアID(例:yamada-denki)--keywordストア内検索キーワード--pages取得するページ数--max-items商品詳細を読む上限件数--mode normal|yutori|deposit森森側の価格種別--point-source total|with-entry利用するポイント種別--min-profit最低利益フィルタ--storage-statePlaywrightログイン状態JSON--json結果JSON出力先
Playwrightログイン連携
ログイン後ポイントで取得したい場合は、先にPlaywrightでYahooログイン状態を保存する。
pnpm exec node /Users/t/.claude/skills/yahoo-store-profit-finder/scripts/yahoo-login-save-state.mjs \
--out /tmp/yahoo-shopping-state.json
その後、保存した状態を指定して実行:
pnpm exec node /Users/t/.claude/skills/yahoo-store-profit-finder/scripts/yahoo-store-profit-scan.mjs \
--store yamada-denki \
--pages 2 \
--max-items 40 \
--mode normal \
--point-source with-entry \
--storage-state /tmp/yahoo-shopping-state.json \
--json /tmp/yahoo-profit-login.json
注意
- Yahoo APIは使用しない(HTML/埋め込みJSONのみ)
- ストアHTML構造が大幅変更された場合はパーサ更新が必要
- 利益は送料・手数料を含まない単純差分