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

Fariba Laiq 2023年10月10日
  1. Selenium と Chrome WebDriver をインストールする
  2. Selenium Python を使用してブラウザでタブを開く
  3. Selenium Python を使用してブラウザで新しいタブを開く
  4. Selenium Python を使用してブラウザのタブを閉じる
  5. タブを閉じ、ブラウザで Selenium Python を使用して別のタブに切り替える
Selenium Python を使用してブラウザでタブを開いたり閉じたりする

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 は新しいタブを閉じ、前のタブに切り替えます

著者: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

関連記事 - Python Selenium