Skip to content

ishibashm/hot-pepper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Hot Pepper Beauty スクレイピング & Google スプレッドシート連携

概要

このプロジェクトは、Hot Pepper Beautyのウェブサイトから特定のエリアのヘアサロン情報をスクレイピングし、そのデータをGoogleスプレッドシートに自動で書き込むPythonプログラムです。エリアごとに異なるシートにデータが整理されます。

機能

  • Hot Pepper Beautyの指定されたURLからヘアサロン情報を取得します。
  • 複数ページにわたる情報を自動でスクレイピングします(ページネーション対応)。
  • 取得した情報をGoogleスプレッドシートの指定されたシートに書き込みます。
  • シートが存在しない場合は自動的に作成し、既存のデータはクリアして新しいデータを書き込みます。

取得されるデータ項目

各ヘアサロンについて以下の情報が取得されます。

  • 店舗名
  • アクセス
  • カット料金
  • 席数
  • ブログ件数
  • 口コミ件数
  • 店舗URL

セットアップ方法

1. プロジェクトのクローン

まず、このリポジトリをローカルにクローンします。

git clone [リポジトリのURL]
cd hot-pepper

2. 仮想環境の作成とアクティベート

Pythonの仮想環境を作成し、アクティベートします。

python -m venv venv
# Windowsの場合
.\venv\Scripts\Activate.ps1
# macOS/Linuxの場合
source venv/bin/activate

3. 依存関係のインストール

必要なPythonライブラリをインストールします。

pip install requests beautifulsoup4 google-api-python-client google-auth-oauthlib

4. Google Cloud Platform (GCP) の設定

Google Sheets APIを使用するために、GCPで以下の設定が必要です。

  1. GCPプロジェクトの作成または選択:
    • Google Cloud Console (https://console.cloud.google.com/) にアクセスし、新しいプロジェクトを作成するか、既存のプロジェクトを選択します。
  2. Google Sheets APIの有効化:
    • ナビゲーションメニューから「API とサービス」>「ライブラリ」に移動し、「Google Sheets API」を検索して有効にします。
  3. サービスアカウントの作成:
    • ナビゲーションメニューから「API とサービス」>「認証情報」に移動します。
    • 「認証情報を作成」をクリックし、「サービスアカウント」を選択します。
    • サービスアカウント名(例: hotpepper-scraper-service)を入力し、「作成して続行」をクリックします。
    • 「このサービスアカウントにプロジェクトへのアクセスを許可する」セクションで、「ロールを選択」ドロップダウンから**「編集者」**を選択し、「続行」>「完了」をクリックします。
  4. サービスアカウントキーのダウンロード:
    • 作成したサービスアカウントのメールアドレスをクリックします。
    • 「キー」タブに移動し、「鍵を追加」>「新しい鍵を作成」をクリックします。
    • キーのタイプとして「JSON」を選択し、「作成」をクリックします。JSONファイルが自動的にダウンロードされます。
  5. 認証情報ファイルのリネームと配置:
    • ダウンロードしたJSONファイルの名前を credentials.json に変更します。
    • この credentials.json ファイルを、プロジェクトのルートディレクトリ(hot-pepper/)に配置します。
  6. Googleスプレッドシートの共有設定:
    • データを書き込みたいGoogleスプレッドシートを開きます。
    • 「共有」ボタンをクリックし、作成したサービスアカウントのメールアドレスを「編集者」として追加します。サービスアカウントのメールアドレスは、GCPの「API とサービス」>「認証情報」ページで確認できます。

使用方法

すべてのセットアップが完了したら、仮想環境がアクティベートされていることを確認し、以下のコマンドでスクリプトを実行します。

python hotpepper_scraper.py

スクリプトが実行されると、Hot Pepper Beautyからデータがスクレイピングされ、指定されたGoogleスプレッドシートに書き込まれます。

注意事項

  • Hot Pepper BeautyのウェブサイトのHTML構造が変更された場合、スクレイピングロジック(hotpepper_scraper.py内のセレクタなど)の修正が必要になる場合があります。
  • Google Sheets APIの利用には、Googleの利用規約が適用されます。APIのレート制限などに注意してください。
  • credentials.json ファイルは機密情報です。Gitリポジトリにコミットしないように、.gitignore ファイルで適切に管理されています。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages