使用 Playwright 控制瀏覽器的啓動、停止和等待

簡介

Playwright 是一個強大的自動化測試工具,它不僅可以模擬用戶在瀏覽器中的行爲,還能夠靈活控制瀏覽器的啓動、停止和等待操作。在本文中,我們將探討如何使用 Playwright 進行這些操作。

啓動停止瀏覽器

我們之前是使用with方法來控制瀏覽器啓動和停止,現在我們來介紹一下使用start stop來控制瀏覽器,代碼如下:

from playwright.sync_api import sync_playwright

playwright = sync_playwright().start()

browser = playwright.chromium.launch(headless=False)
page = browser.new_page()
page.goto("https://www.ceshiren.com/")


browser.close()
playwright.stop()

等待

我們之前介紹過,相對於selenium,playwright執行速度會更快,爲了便於我們查看執行的過程,我們可以加上等待來減緩執行,但是與selenium不同,playwright通過slow_mo (單位是毫秒)減慢執行速度,它的作用範圍是全局的,從啓動瀏覽器到操作元素每個動作都會有等待間隔,方便在出現問題的時候看到頁面操作情況。使用方法如下:

chromium.launch(headless=False, slow_mo=50)

示例代碼如下:

from playwright.sync_api import sync_playwright


with sync_playwright() as p:
    browser = p.chromium.launch(headless=False, slow_mo=1000)
    page = browser.new_page()
    page.goto("https://www.baidu.com")
    print(page.title())
    page.fill('#kw', "測試人社區")
    page.click('#su')
    browser.close()

注:與selenium不同,playwright不再支持time.sleep(),而是使用page.wait_for_timeout()來實現等待,當我們調試時需要等待,即可使用該方法。

示例代碼如下:

from playwright.sync_api import sync_playwright



with sync_playwright() as p:
    browser = p.chromium.launch(headless=False, slow_mo=1000)
    page = browser.new_page()
    page.goto("https://www.baidu.com")
    print(page.title())
    # 等待5秒
    page.wait_for_timeout(5000)
    page.fill('#kw', "測試人社區")
    page.click('#su')
    # 等待3秒 
    page.wait_for_timeout(3000)
    browser.close()

運行結果如下:

總結

本文主要介紹了一些playwright的簡單使用,playwright的使用與selenium有一些不同,我們需要注意不同點,比如playwright默認是無頭模式運行以及等待的改變。下一篇文章我們將介紹playwright定位元素的方法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章