HOWTO · Python

Selenium Python を使用してブラウザでタブを開いたり閉じたりする

このチュートリアルでは、Python で Selenium を使用して、ブラウザーで新しいタブを自動的に開く方法を示します。

Selenium は、強力な Web 自動化およびテストツールです。Selenium を使用してスクリプトを記述します。これは、Web ブラウザーを制御し、特定のアクションを実行します。

このガイドでは、新しいタブで Web サイトを自動的に開いたり閉じたりするスクリプトを Python で記述します。

Selenium と Chrome WebDriver をインストールする

Selenium をインストールするには、次のコマンドを使用します。

#Python 3.x
pip install selenium

ChromeDriver は、Selenium WebDriver が Chrome と対話するために使用するもう 1つの実行可能ファイルです。Chrome Web ブラウザーでタスクを自動化する場合は、ChromeDriver もインストールする必要があります。

Chrome ブラウザのバージョンに基づいて、互換性のあるドライバを選択する必要があります。Chrome ドライバーをインストールして構成する手順は次のとおりです。

  1. このリンクをクリックします。Chrome ブラウザのバージョンとオペレーティングシステムの種類に応じて Chrome ドライバをダウンロードします。
  2. Chrome ブラウザのバージョンを確認する場合は、Chrome の右上隅にある 3つのドットをクリックし、[ヘルプ]をクリックして、[GoogleChrome について]を選択します。Chrome のバージョンは about セクションで確認できます。
  3. zip ファイルを解凍し、Chrome ドライバーを実行します。

Selenium Python を使用してブラウザでタブを開く

次のコードで WebDriver インスタンスを作成し、Chrome ドライバーへのパスを指定しました。次に、ドライバーインスタンスで get() メソッドを使用して、ターゲット Web サイトの URL を設定しました。

Chrome ブラウザで対象のウェブサイトを開きます。

コード例:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")

出力:

Selenium Open Tab Python

Selenium Python を使用してブラウザで新しいタブを開く

同じブラウザウィンドウで新しいタブを開くには、JavaScript エグゼキュータを使用します。execute_script() メソッドを使用して JavaScript コマンドを実行します。

JavaScript コマンドを引数としてこのメ​​ソッドに渡します。window.open() コマンドを使用して、ウィンドウ内の別のタブを開きます。

ウィンドウハンドルには、Web ブラウザで開いたウィンドウの一意のアドレスが格納されます。switch_to_window() メソッドは、指定されたウィンドウアドレスに切り替わります。

1 は 2 番目のウィンドウのアドレスを表します。最後に、get() メソッドを使用して新しい Web サイトの URL を提供します。

コード例:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[1])
driver.get(
    "https://www.indeed.com/career-advice/career-development/types-of-personality-test"
)

出力:

Selenium 新しいタブを開く Python

Selenium Python を使用してブラウザのタブを閉じる

ドライバーで close() メソッドを使用してタブを閉じます。

コード例:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
url = "https://www.16personalities.com/free-personality-test"
driver.get(url)
driver.close()

タブを閉じ、ブラウザで Selenium Python を使用して別のタブに切り替える

次のコードで Selenium を使用して、タブで URL を開きました。別のタブを開き、switch_to.window(driver.window_handles[1]) を使用してそのタブに切り替えました。

新しいタブは、指定された URL を開きます。次に、close() メソッドを使用してこのタブを閉じ、switch_to.window(driver.window_handles[0]) メソッドを使用して前のタブに切り替えます。

コード例:

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
url = "https://www.16personalities.com/free-personality-test"
driver.get(url)
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[1])
driver.get("https://www.16personalities.com/personality-types")
driver.close()
driver.switch_to.window(driver.window_handles[0])

出力:

セレンスイッチの新しいタブ

Selenium は新しいタブを閉じ、前のタブに切り替えます