ホームページ >バックエンド開発 >Python チュートリアル >Python で Selenium WebDriver を使用する方法
WebDriver は、ユーザーをローカルに、または Selenium サーバーを使用してリモート マシン上で実行することで、ブラウザの自動化が飛躍的に進みます。
Selenium WebDriver は、言語バインディングと各ブラウザー制御コードの実装を指します。これは、WebDriver と呼ばれることがよくあります。
Selenium WebDriver は W3C 推奨です。
WebDriver は、シンプルかつ簡潔なプログラミング インターフェイスになるように設計されています。
WebDriver は、単純なオブジェクト指向 API です。
ブラウザを効果的に駆動します。
この記事で使用する環境は python3.11 win10 64 ビット Firefox ブラウザーであるため、この記事で使用するブラウザー ドライバーは Firefox の別のブラウザを使用している場合は、対応するブラウザ ドライバを選択するだけです。
最も簡単な方法は、pip を使用して直接インストールすることです
pip install selenium
Selenium は、WebDriver を通じて、Chrome、Firefox、Internet Explorer、Edge、Safari などの市場の主要なブラウザをすべてサポートします。WebDriver は、ブラウザの組み込み自動サポートを使用してブラウザを駆動しようとします。
インターネットを除く以降エクスプローラー外のすべてのドライバー実装はブラウザー ベンダー自体によって提供されるため、これらのドライバーは標準の Selenium ディストリビューションには含まれていません。このセクションでは、さまざまなブラウザーを使用するための基本的な要件について説明します。
開く次の URL https://www.selenium.dev/zh-cn/documentation/webdriver/getting_started/install_drivers/
にブラウザ ドライバをダウンロードするリンクがあり、Selenium でサポートされている複数のブラウザ ドライバが表示されます。 , コンピューターにインストールされているブラウザーに対応するドライバーをダウンロードするだけです。この記事では Firefox を使用するため、Firefox ドライバーを選択してください。
Firefox ドライバーのダウンロード リンクをクリックし、github のリリース ページに移動すると、各バージョンのドライバーが表示されます。この記事は win10 64 ビットであり、選択されたドライバーは1 つは geckodriver-v0. 32.0-win-aarch74.zip で、お使いのシステムに応じて対応するファイルを選択するだけです。
解凍すると、次のような実行可能ファイルになります。
[マイ コンピューター] -> [プロパティ] -> [システムの詳細設定] -> [環境変数] を開き、パスをダブルクリックして、[新規] をクリックし、ドライバー geckodriver.exe が存在するディレクトリを入力して、[OK] を最後までクリックします。
# 単純に確認し、新しいコンソールを開いてドライバー ファイル名を入力します。 geckodriver.exe を開くと、通常どおり開くことができます。 もちろん、別の方法もあります。それは、Python ディレクトリ フォルダー内の Scripts ファイルにドライバーを直接入れることです。 Python スクリプトの実行時に直接開くこともできます。たとえば、私のディレクトリは D:\Python\Python311\Scripts3 です。最初の Selenium スクリプトを作成しますSelenium のインストールとドライバーのインストールが完了したら、Selenium スクリプトの作成を開始できます。##Selenium が行うことは、ブラウザにコマンドを送信して何らかのアクションを実行したり、情報を要求したりすることだけです。Selenium で行うことのほとんどは、次の基本コマンドの組み合わせです。
1. ドライバー インスタンスを使用してセッションを開きます
driver = webdriver.Firefox()
2. ブラウザーで操作を実行します
この例では、Web ページに移動します。driver.get("https://www.selenium.dev/selenium/web/web-form.html")
title = driver.title
driver.implicitly_wait(0.5)
5.发送命令 查找元素
大多数Selenium会话中的主要命令都与元素相关, 如果不先找到元素, 就无法与之交互
text_box = driver.find_element(by=By.NAME, value="my-text") submit_button = driver.find_element(by=By.CSS_SELECTOR, value="button")
6.操作元素
对于一个元素, 只有少数几个操作可以执行, 但您将经常使用它们
text_box.send_keys("Selenium") submit_button.click()
7.获取元素信息
value = message.text
8.结束会话
这将结束驱动程序进程, 默认情况下, 该进程也会关闭浏览器. 无法向此驱动程序实例发送更多命令
driver.quit()
让我们将这8个部分组合成一个完整的脚本, 包括需要使用的库
from selenium import webdriver from selenium.webdriver.common.by import By def test_eight_components(): driver = webdriver.Firefox() driver.get("https://www.selenium.dev/selenium/web/web-form.html") title = driver.title assert title == "Web form" driver.implicitly_wait(0.5) text_box = driver.find_element(by=By.NAME, value="my-text") submit_button = driver.find_element(by=By.CSS_SELECTOR, value="button") text_box.send_keys("Selenium") submit_button.click() message = driver.find_element(by=By.ID, value="message") value = message.text assert value == "Received!" driver.quit()
以上がPython で Selenium WebDriver を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。