ホームページ >バックエンド開発 >Python チュートリアル >Microsoft の Python 初心者向けツールはとてもおいしいです!
安装playwright库 pip install playwright 安装浏览器驱动文件(安装过程稍微有点慢) python -m playwright install上記の 2 つの pip 操作は個別にインストールされます:
命令行键入 --help 可看到所有选项 python -m playwright codegencodegen の使用法は --help を使用して表示できます。使い方が簡単な場合は、コマンドの直後に URL リンクを追加するだけです。その他の必要がある場合は、オプションを追加できます。
python -m playwright codegen --help Usage: index codegen [options] [url] open page and generate code for user actions Options: -o, --output <file name>saves the generated script to a file --target <language> language to use, one of javascript, python, python-async, csharp (default: "python") -h, --helpdisplay help for command Examples: $ codegen $ codegen --target=python $ -b webkit codegen https://example.comオプションの意味:
python -m playwright codegen --target python -o 'my.py' -b chromium https://www.baidu.comコマンド ラインを入力すると、ブラウザが自動的に開き、次に示すように、ブラウザ上のすべてのアクションが自動的にコードに変換されることがわかります。
from playwright import sync_playwright def run(playwright): browser = playwright.chromium.launch(headless=False) context = browser.newContext() # Open new page page = context.newPage() page.goto("https://www.baidu.com/") page.click("input[name="wd"]") page.fill("input[name="wd"]", "jingdong") page.click("text="京东"") # Click //a[normalize-space(.)='京东JD.COM官网 多快好省 只为品质生活'] with page.expect_navigation(): with page.expect_popup() as popup_info: page.click("//a[normalize-space(.)='京东JD.COM官网 多快好省 只为品质生活']") page1 = popup_info.value # --------------------- context.close() browser.close() with sync_playwright() as playwright: run(playwrightさらに、Playwright は同期および非同期 API インターフェイスも提供します。ドキュメントは次のとおりです。
from playwright import sync_playwright with sync_playwright() as p: for browser_type in [p.chromium, p.firefox, p.webkit]: browser = browser_type.launch() page = browser.newPage() page.goto('https://baidu.com/') page.screenshot(path=f'example-{browser_type.name}.png') browser.close()非同期非同期操作を asyncio と組み合わせて、3 つのブラウザー操作を同時に実行できます。
import asyncio from playwright import async_playwright async def main(): async with async_playwright() as p: for browser_type in [p.chromium, p.firefox, p.webkit]: browser = await browser_type.launch() page = await browser.newPage() await page.goto('http://baidu.com/') await page.screenshot(path=f'example-{browser_type.name}.png') await browser.close() asyncio.get_event_loop().run_until_complete(main())モバイル端末さらに驚くべきことに、Playwright はモバイル ブラウザー シミュレーションもサポートできることです。以下は公式ドキュメントで提供されているコードで、特定の地理的位置にある iPhone 11 pro の Safari ブラウザをシミュレートします。まず、maps.google.com に移動し、位置決めを実行してスクリーンショットを撮ります。
from playwright import sync_playwright with sync_playwright() as p: iphone_11 = p.devices['iPhone 11 Pro'] browser = p.webkit.launch(headless=False) context = browser.newContext( **iphone_11, locale='en-US', geolocation={ 'longitude': 12.492507, 'latitude': 41.889938 }, permissions=['geolocation'] ) page = context.newPage() page.goto('https://maps.google.com') page.click('text="Your location"') page.screenshot(path='colosseum-iphone.png') browser.close()また、pytest プラグインでも利用できるので、興味のある方はぜひ試してみてください。 3. 概要Playwright には、既存の自動テスト ツールに比べて次のような多くの利点があります。
いくつかの制限がありますが、Playwright はバージョン 1.7.0 に更新されました。更新が世代を重ねるごとに、システムはより完璧になります。初心者のアーティファクトとして、それはすべての人を救います非常に多くのこと、私たちはその未来がますます良くなると信じています。
以上がMicrosoft の Python 初心者向けツールはとてもおいしいです!の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。