Selenium Python のアクション チェーン

Vaibhhav Khetarpal 2024年2月15日
  1. Selenium Python で単純なアクション チェーン オブジェクトを作成する方法
  2. Selenium Python でアクション チェーンを実装する
Selenium Python のアクション チェーン

Selenium は、自動化に使用されるスタンドアロンの Web ベースのツールです。 誰でも利用できるオープンソースのツールです。

Python 言語と組み合わせると、このツールはテストに利用されます。 アクション チェーンは Selenium の基本的な部分であり、キープレス、マウスの動き、マウス ボタンのアクション、コンテキスト メニューとの相互作用などの低レベルの相互作用を管理する方法を提供します。

このチュートリアルでは、Python を使用して Selenium にアクション チェーンを実装する方法を示します。

通常、アクション チェーンは、いずれかの要素をクリックまたはドラッグする必要がある高度なスクリプトを自動化する必要がある場合に使用します。

アクション チェーン オブジェクトは、Python でアクション チェーンを実装するために利用されます。 アクション チェーン オブジェクトは、すべてのアクションをキューに格納できます。このキューは、perform() 関数を呼び出して、格納されたすべての操作を実行します。

Selenium Python で単純なアクション チェーン オブジェクトを作成する方法

シンプルな Action Chain オブジェクトは、必要なモジュールをインポートし、Python コードでいくつかの値を渡すことで作成できます。

次のコードは、単純な Action Chain オブジェクトを作成します。

from selenium import webdriver  # webdriver is imported from selenium

from selenium.webdriver.common.action_chains import (
    ActionChains,
)  # ActionChains is imported from webdriver

driver = webdriver.Firefox()  # a webdriver object is then created

action = ActionChains(
    driver
)  # An action chain object is finally created with the driver
  1. Action Chain クラスはまず selenium.webdriver モジュールからインポートされます。
  2. driver が定義されます。
  3. 次に、この driver がキー引数として action chain オブジェクトに渡されます。
  4. アクション チェーン オブジェクトが作成され、実行可能な操作を実行する準備が整います。

一般的な利用とは別に、アクション チェーンはチェーンまたはキュー パターンでも使用できます。

Selenium Python でアクション チェーンを実装する

これをよりよく説明するために、ウェブサイト https://www.delftstack.com/ の例を取り上げ、Python コードでいくつかの実験を行います。

以下のコード例では、最初にウェブサイト https://www.delftstack.com/ を実行し、次にヘッダーの TUTORIALS ボタンをクリックします。これにより、ブラウザは https://www にリダイレクトします。 .delftstack.com/tutorial/ ウェブサイトのリンク自体。

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains

driver = webdriver.Firefox()
driver.get("https://www.delftstack.com/")
clicker1 = driver.find_element_by_link_text("TUTORIALS")
action = ActionChains(driver)
action.click(on_element=clicker1)
action.perform()

上記のコードは、次の出力を提供します。

コードが最初に実行され、ウェブサイトのホームページ https://www.delftstack.com/ が開きます。

セレン python のアクション チェーン

次に、上記のコードの操作に従って、https://www.delftstack.com/tutorials/ Web ページに自動的にリダイレクトされます。

セレン python 1 のアクション チェーン

  1. Action Chain クラスはまず selenium.webdriver モジュールからインポートされます。
  2. 次に、Web サイト https://www.delftstack.com/ である driver を定義します。 これには get() 関数を使用します。
  3. 次に、要素 clicker1、つまり Web サイトのヘッダーにある TUTORIALS ボタンを定義します。
  4. この driveraction chain オブジェクトにキー引数として渡されます。
  5. 次に、action.click() 関数を使用して、前に定義した clicker1 要素をその引数として渡します。
  6. 次に perform() 関数を実行して、コードで定義された操作を実行できるようにします。

記事のこの部分では、Python で Selenium のアクション チェーンを使用する実際の例を取り上げました。

ただし、Selenium でアクション チェーンを実装するだけでは十分ではありません。 また、Action Chain オブジェクトを作成した後に実行される Action Chain メソッドについても知っておく必要があります。 以下に、重要なもののいくつかを説明しました。

  1. click - 要素をクリックする方法。
  2. click_and_hold - 指定された要素でマウスの左ボタンを押し続ける方法。
  3. double_click - 要素をダブルクリックする方法。
  4. drag_and_drop - LMB を要素に保持し、ターゲット サイトにドラッグし、その後解放します。
  5. move_to_element - マウスを要素の中心に移動します。
  6. perform - action chain オブジェクトに格納されているすべてのアクションは、このメソッドを使用して実行されます。
  7. 一時停止 - すべての入力が一定時間一時停止されます。 時間の単位は秒です。
  8. release - マウス ボタンを押したままにすると、ボタンが離されます。
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

関連記事 - Python Selenium