> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Square Cloud での Selenium アプリケーションのホスティング方法

> Square Cloud 上で Selenium と Chromium を使ってウェブナビゲーションを自動化するための完全ガイド。プロフェッショナルな実装と高度な設定を解説します。

## プロフェッショナルな Selenium スクリプト開発

Square Cloud 上で効率的なウェブ自動化を実装するには、適切な開発環境を整え、設定のベストプラクティスに従うことが不可欠です。

### 必須の技術的前提条件

* **Python と pip**: システムに **Python** と **pip** がインストールされていることを確認してください。まだお持ちでない場合は、[Python 公式サイト](https://www.python.org/)と [Pip 公式サイト](https://pypi.org/)からダウンロードしてください。
* **Square Cloud アカウント**: [サインアップページ](https://squarecloud.app/ja/signup)からメールアドレスを使ってアカウントを作成してください。
* **有効な有料プラン**: Selenium アプリケーションを実行するのに十分なリソースを確保するには、有料プランが必要です。[利用可能なプラン](https://squarecloud.app/ja/pricing)を確認し、ニーズに最も適したものを選んでください。

### Selenium 環境の設定

Python と pip をインストールしたら、Selenium スクリプトの作成に進みます。まず、Selenium ライブラリをインストールします。

```bash Terminal theme={null}
pip install selenium
```

次に、Python ファイル (例: `main.py`) を作成し、基本的な Selenium スクリプトを実装するために次のコードを追加します。

```python main.py theme={null}
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service

# Configuration options for Chromium
options = Options()
options.add_argument("--headless")  # Runs in background without graphical interface
options.add_argument("--no-sandbox")  # Required for execution as root in containerized environments
options.add_argument("--disable-dev-shm-usage")  # Overcomes shared memory limitations on large pages

# Driver initialization
service = Service('/usr/bin/chromedriver')  # Default ChromeDriver path on Square Cloud
driver = webdriver.Chrome(service=service, options=options)

# Browser window dimensions configuration
driver.set_window_size(1920, 1080)  # Adjust as needed for your application

# Navigate to web page
driver.get('https://www.google.com')

# Loop for screenshot capture every minute
while True:
    driver.save_screenshot('page.png')
    print("Page screenshot saved successfully.")
    time.sleep(60)  # 60-second pause between captures
```

## requirements.txt による依存関係管理

`requirements.txt` ファイルは、プロジェクトに必要なすべての外部ライブラリを列挙する重要なコンポーネントです。`random` や `datetime` などのネイティブ Python ライブラリを除き、使用するすべての依存関係を含めることが極めて重要です。このファイルは、アプリケーションを Square Cloud に提出する際に含める必要があります。

```txt requirements.txt theme={null}
selenium
```

## Chromium パスの設定

上記の実装では、Selenium WebDriver が標準的なシステムの場所にインストールされたブラウザを自動的に見つけられるため、Chromium のパスを明示的に定義する必要はありません。`Service('/usr/bin/chromedriver')` で指定された ChromeDriver は、Chromium/Chrome 実行ファイルの場所を把握しています。

### Square Cloud のアーキテクチャ

Square Cloud では、Chromium は標準的なシステムの場所である `/usr/bin/chromium` にインストールされています。そのため、Selenium WebDriver は指定された ChromeDriver を通じて自動的にそれを見つけられます。したがって、カスタムインストールや異なる環境設定など特別な理由がない限り、コード内で Chromium のパスを明示的に指定する必要はありません。

## Square Cloud 設定ファイル

<Card title="詳しく学ぶ: Square Cloud 用の設定ファイルの作成方法。" icon="link" href="https://docs.squarecloud.app/ja/getting-started/config-file">
  squarecloud.app ファイルは、Square Cloud 上でアプリケーションを設定するために使用される重要な設定ファイルです。名前、説明、バージョン、メインファイルなど、基本的な設定を定義します。
</Card>

## プロジェクトを Square Cloud にアップロードする

すべてのプロジェクトファイルの準備ができたら、Square Cloud にアップロードして、アプリケーションをプロフェッショナルにホスティングしましょう。

<Tabs>
  <Tab title="ダッシュボードからアップロード">
    [Square Cloud ダッシュボード](https://squarecloud.app/ja/dashboard/new)にアクセスして、プロジェクトファイルをアップロードします。

    <Frame>
      <img src="https://cdn.squarecloud.app/docs/articles/dashboard/uploading.gif" alt="Square Cloud へのアプリケーションのアップロード" style={{ borderRadius: "0.2rem" }} />
    </Frame>
  </Tab>

  <Tab title="CLI からアップロード">
    <Steps>
      <Step title="ステップ 1">
        まず、環境に CLI がインストールされている必要があります。まだお持ちでない場合は、ターミナルで次のコマンドを実行してください。

        ```bash Terminal theme={null}
        npm install -g @squarecloud/cli
        ```

        すでにお持ちの場合は、アップデートすることをおすすめします。そのためには、ターミナルで次のコマンドを実行してください。

        ```bash Terminal theme={null}
        squarecloud update
        ```
      </Step>

      <Step title="ステップ 2">
        認証してその他の CLI コマンドを使用するには、認証キーが必要です。[こちら](https://squarecloud.app/ja/account/security)で「Request API Key」をクリックすると取得できます。認証キーを取得したら、次のコマンドを実行してください。

        ```bash Terminal theme={null}
        squarecloud auth login
        ```
      </Step>

      <Step title="ステップ 3">
        最後に、CLI を使ってアプリケーションを Square Cloud にデプロイするには、zip ファイルのパスを指定して次のコマンドを実行してください。

        ```bash Terminal theme={null}
        squarecloud upload zip
        ```
      </Step>
    </Steps>
  </Tab>
</Tabs>

## 追加リソースとドキュメント

Selenium とその高度なツールについてのより詳細な情報は、[Selenium 公式ドキュメント](https://www.selenium.dev/documentation/webdriver/getting_started/)を参照してください。そこには、詳細な技術ガイド、専門的なチュートリアル、完全な API ドキュメントがあり、Selenium の機能を最大限に活用できます。

## お問い合わせ

**技術的な問題**が解決しない場合は、**専門のサポートチーム**がお手伝いします。[**お問い合わせ**](https://squarecloud.app/ja/support)いただければ、どのような問題でも喜んで解決をサポートいたします。
