亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python怎么使用Selenium?WebDriver

發布時間:2023-04-11 15:03:17 來源:億速云 閱讀:106 作者:iii 欄目:開發技術

本篇內容主要講解“Python怎么使用Selenium WebDriver”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python怎么使用Selenium WebDriver”吧!

    Selenium WebDriver 入門 

    一、什么是Selenium WebDriver

    WebDriver 以本地化方式驅動瀏覽器,就像用戶在本地或使用 Selenium 服務器的遠程機器上所做的那樣,這標志著瀏覽器自動化的飛躍。

    Selenium WebDriver 指的是語言綁定和各個瀏覽器控制代碼的實現。 這通常被稱為 WebDriver。

    Selenium WebDriver 是 W3C 推薦標準。

    • WebDriver 被設計成一個簡單和簡潔的編程接口。

    • WebDriver 是一個簡潔的面向對象 API。

    • 它能有效地驅動瀏覽器。

    二、安裝Selenium WebDriver

    本文使用環境為python3.11 + win10 64位 + firefox瀏覽器,所以本文使用的瀏覽器驅動是Firefox的geckodriver ,如果你使用的是其他瀏覽器,那么選擇自己對應的瀏覽器驅動程序即可。

    2.1 安裝selenium類庫

    最簡單的方式就是使用pip直接安裝

    pip install selenium

    Python怎么使用Selenium?WebDriver

    2.2 安裝瀏覽器驅動

    通過WebDriver, Selenium支持市場上所有主要瀏覽器, 如Chrome、Firefox、Internet Explorer、Edge和Safari. WebDriver盡量使用瀏覽器內置的自動化支持 來驅動瀏覽器.

    由于除Internet Explorer之外的所有驅動程序實現 都是由瀏覽器供應商自己提供的, 因此標準Selenium發行版中不包括這些驅動程序. 本節介紹了使用不同瀏覽器的基本要求.

    打開以下網址https://www.selenium.dev/zh-cn/documentation/webdriver/getting_started/install_drivers/

    找到瀏覽器驅動下載的鏈接,這里可以看到Selenium支持的多個瀏覽器驅動,你自己電腦上裝了什么瀏覽器,就下載對應的驅動程序即可,本文使用的是firefox,所以選擇firefox的驅動。

    Python怎么使用Selenium?WebDriver

    點擊firefox驅動下載鏈接,進入到github的releases頁面,可以看到各個版本的驅動程序,本文是win10 64位,選擇的是 geckodriver-v0.32.0-win-aarch74.zip ,根據自己的系統選擇對應的文件即可。

    Python怎么使用Selenium?WebDriver

    解壓后是一個可執行文件,如下所示:

    Python怎么使用Selenium?WebDriver

    2.3 配置環境變量

    依次打開我的電腦->屬性->高級系統設置->環境變量,雙擊path,點擊新建,輸入驅動程序geckodriver.exe所在的目錄即可,然后一路點擊確定。

    Python怎么使用Selenium?WebDriver

    Python怎么使用Selenium?WebDriver

    Python怎么使用Selenium?WebDriver

    簡單驗證一下,新打開一個控制臺,輸入驅動程序文件名,此處為geckodriver.exe,能夠正常打開即可

    Python怎么使用Selenium?WebDriver

    當然了,還有個野路子,就是直接把該驅動程序放到你的Python目錄下Scripts文件夾中,執行python腳本的時候也能夠直接打開即可。比如我的目錄是D:\Python\Python311\Scripts

    三、編寫第一個Selenium腳本

    當你完成 Selenium安裝 and 驅動安裝 后, 便可以開始書寫Selenium腳本了。

    Selenium所做的一切, 就是發送給瀏覽器命令, 用以執行某些操作或為信息發送請求. 您將使用Selenium執行的大部分操作, 都是以下基本命令的組合:

    1.使用驅動實例開啟會話

     driver = webdriver.Firefox()

    2.在瀏覽器上執行操作
    在本例中, 我們 導航 到一個網頁.

     driver.get("https://www.selenium.dev/selenium/web/web-form.html")

    3.請求瀏覽器信息
    您可以請求一系列關于瀏覽器的信息 , 包括窗口句柄、瀏覽器尺寸/位置、cookie、警報等

     title = driver.title

    4.建立等待策略
    將代碼與瀏覽器的當前狀態同步 是Selenium面臨的最大挑戰之一, 做好它是一個高級主題.基本上, 您希望在嘗試定位元素之前, 確保該元素位于頁面上, 并且在嘗試與該元素交互之前, 該元素處于可交互狀態。隱式等待很少是最好的解決方案, 但在這里最容易演示

     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”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    宁强县| 招远市| 延长县| 吉安县| 五大连池市| 南部县| 平陆县| 石林| 濮阳县| 武冈市| 乐东| 南安市| 隆林| 象山县| 会同县| 彰化市| 永新县| 长海县| 修水县| 玉环县| 福鼎市| 莲花县| 江陵县| 临朐县| 凯里市| 化州市| 祁门县| 青海省| 嘉黎县| 玉溪市| 宁远县| 宜阳县| 山东| 德昌县| 凌源市| 墨江| 兖州市| 佛学| 天峨县| 沿河| 城市|