【要約】毎月のサプリ代を抑えるためにAWS×Next.jsで完全自動の価格比較システムを作ったアーキテクチャ解説 [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
開発者が、サプリメントのコストパフォーマンスを効率的に把握するために、以下の技術的課題に直面した。
- ・Amazon等のECサイトには、g単位の単価で比較できる機能が存在しない。
- ・比較サイトは、商品名と価格を並べただけの「Thin Content(内容の薄いページ)」と判定され、SEOで不利になるリスクがある。
// Approach
開発者は、サーバーレスアーキテクチャを採用し、データの自動収集とSEO対策を両立させた。
- ・AWS LambdaとPython(BeautifulSoup)を用い、価格、星評価、過去1ヶ月の購入数を日次で自動取得する。
- ・取得データから「1g・1粒あたりの単価」を計算し、Amazon DynamoDBへUpsertする。
- ・Next.js (App Router) を用い、取得した属性データを組み合わせて「自動分析レポート」を動的に生成し、ページごとの固有テキストを確保する。
// Result
本システムの構築により、開発者は以下の成果を得た。
- ・ユーザーが単価やトレンドに基づき、独自の基準でサプリを選べる環境を実現した。
- ・完全自動のデータ更新パイプラインを構築し、運用負荷を低減した。
- ・動的なテキスト生成により、SEOにおけるインデックス拒否リスクを軽減した。
Senior Engineer Insight
> サーバーレス構成による低コスト運用と、SEOを技術的に解決するアプローチは極めて合理的である。ただし、スクレイピングは対象サイトの構造変化に脆弱であり、保守コストが潜在する。また、商品リストの手動管理は、規模拡大時のボトルネックとなる。実戦では、対象サイトの規約遵守と、スケーラビリティを考慮した収集ロジックの設計が不可欠だ。