商品リサーチをしてそれをGoogleスプレッドシートに記載する方法
(APIを利用せず)
目的別おすすめ方法
1. 手軽に実現したい場合: Googleフォームを利用
- 特徴: 簡単な設定で商品名をスプレッドシートに送信可能。
- メリット: 技術スキルが不要で、GoogleフォームのURLを商品名にリンクするだけ。
- デメリット: フォームを経由するため、操作にワンクッション挟まる。
実用性スコア: ⭐⭐⭐⭐☆
- 短期で実現したい場合や簡易的な運用に最適。
2. 自動化とシンプルな運用を重視する場合: Google Apps Script
- 特徴: 商品名をスプレッドシートに直接書き込む。
- メリット: 中間ステップなしで直接スプレッドシート更新が可能。
- デメリット: 初期設定に時間がかかる(スクリプトの作成とURLの設定が必要)。
実用性スコア: ⭐⭐⭐⭐⭐
- 継続利用を見据えた場合や完全な自動化を目指す場合に最適。
3. 既存ツールの利用を優先する場合: 手動(クリップボードやCSV利用)
- 特徴: 商品名をコピーしてスプレッドシートに貼り付け。
- メリット: 新たな設定が不要で、すぐに始められる。
- デメリット: 手動操作が多く、データ量が多い場合は手間がかかる。
実用性スコア: ⭐⭐⭐☆☆
- 初期設定なしで開始可能ですが、効率は低い。
どれが最適か
結論としては、
- 短期・簡易的な運用 → Googleフォーム
- 長期・効率重視の運用 → Google Apps Script
おすすめの実用シナリオ
Google Apps Script(長期的におすすめ)
- 初期設定: スプレッドシートと連携するスクリプトを1回作成。
- URLリンク生成: 商品名クリック時にAPI不要でスプレッドシートに反映。
- 実運用: 中間ステップなしで、ワンクリックでデータが入力される。
以下は、Google Apps Script を使って「Amazonの商品名をクリックするとGoogleスプレッドシートに入力される仕組み」を作るための具体的でわかりやすい手順です。
1. Googleスプレッドシートを準備
- 新しいスプレッドシートを作成
- Googleスプレッドシートを開いて、任意の名前を付けます(例:
Amazon商品リスト)。 - シート1の名前はそのまま
Sheet1を使います(後で変更可能)。
- Googleスプレッドシートを開いて、任意の名前を付けます(例:
- 列ヘッダーを設定
- 1行目に以下のような列名を入力します(例):
- A1:
商品名 - B1:
日時
- A1:
- 1行目に以下のような列名を入力します(例):
2. Google Apps Scriptのセットアップ
- スクリプトエディタを開く
- スプレッドシートのメニューから「拡張機能」 → 「Apps Script」をクリックします。
- スクリプトコードを貼り付ける 以下のコードを貼り付けます:
function doGet(e) { const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"); // パラメータ "name" から商品名を取得 const productName = e.parameter.name; if (productName) { // スプレッドシートに新しい行を追加 sheet.appendRow([productName, new Date()]); return ContentService.createTextOutput("商品名がスプレッドシートに追加されました: " + productName); } else { return ContentService.createTextOutput("商品名がありません"); } } - スクリプトを保存
- 名前を
AmazonToSheetなど任意の名前で保存します。
- 名前を
- ウェブアプリとしてデプロイ
- 「デプロイ」 → 「ウェブアプリとしてデプロイ」をクリック。
- 設定項目を以下のように設定します:
- 説明: 任意の説明(例:
Amazon商品入力) - エグゼキューターとしての実行: 自分(アカウント名)
- アクセスできるユーザー: 「全員(匿名含む)」を選択。
- 説明: 任意の説明(例:
- デプロイ後に表示されるウェブアプリURLをコピーします(後で使用します)。
3. Amazonの商品名をクリックで送信する仕組み
次に、Amazonの商品名をクリックすると上記スクリプトにデータを送信する設定をします。
方法1: 手動でURLを生成
- スクリプトURLにパラメータとして商品名を付与します:
https://script.google.com/macros/s/your-script-id/exec?name=商品名- 例:
https://script.google.com/macros/s/your-script-id/exec?name=Sony+Headphones
- 例:
方法2: JavaScriptで自動リンク生成
Amazonの商品ページで、商品名にリンクを付けるスクリプトを作ります。
- 以下のスクリプトをブラウザのコンソールで実行
const scriptUrl = "https://script.google.com/macros/s/your-script-id/exec"; // デプロイしたスクリプトのURL // 商品名のリンクを追加 document.querySelectorAll('.s-title').forEach(item => { const productName = item.innerText; item.addEventListener('click', () => { window.open(`${scriptUrl}?name=${encodeURIComponent(productName)}`); }); });- これにより、商品名をクリックすると自動的にGoogleスプレッドシートに追加されます。
- ブラウザ拡張として使う(オプション)
- このスクリプトをTampermonkeyなどに登録すると、自動でリンクが生成されます。
4. テストと確認
- ブラウザで商品名をクリック
- スクリプトが正しく動作していれば、商品名と日時がスプレッドシートに追加されます。
- スプレッドシートでデータ確認
- 新しいデータが行単位で追加されていることを確認します。
5. 注意点
- 匿名ユーザーアクセスのリスク
誰でもアクセス可能にした場合、不正利用の可能性があります。内部利用に限定する場合は、アクセス範囲を「Googleアカウントを持つユーザー」や「特定のアカウント」に制限することを検討してください。 - AmazonのHTML構造変更
商品名セレクタ(例:.s-title)は変更される場合があります。最新の構造に合わせて修正してください。