top of page
執筆者の写真まあさ

playwright-pythonのインストール

今回はこちらの内容です。基本公式サイトに従って行えば大丈夫です。




まずは、コマンドプロンプトから以下の内容を順番に入力します。


pip install playwright==1.8.0a1
playwright install




このように成功しました。企業ですとプロキシ等のセキュリティー設定で失敗する場合も多いと思います。詳しい方に聞いて頑張りましょう。


ここで注目は以下の3行です。

Downloading chromium v844399

Downloading firefox v1225

Downloading webkit v1423


ここがplaywrightの、seleniumとの最大の違いです。playwright-pythonはWeb Driverを必要としません。これはplaywrightが、通常のブラウザを操作するのではなく、playwright専用のブラウザを中に持っているためです。playwright専用のブラウザは、一般的なクロームやファイヤーフォックスとほぼ同じものと思われます。


seleniumはブラウザのバージョンアップにあわせWeb Driverと呼ばれるソフトを差し替える必要がありましたが、playwrightはその必要がありません。これにより、RPAを作成した場合のメンテナンス、現場をフォローする負荷が大きく下がっています。非常に素晴らしいアイディアです。


私はWeb Driverの問題への対応が嫌でVBAによるIE制御を多用していましたが、マイクロソフトのIE離れが進む中使用が厳しくなって来たのが実情で、非常に良いタイミングでplaywrightが登場してくれたことに感謝しています。



本日はあと一つだけ。

レコーディング機能です。

コマンドプロンプトから、以下の内容を入力します。


playwright codegen

しばらく待つと、ブラウザが新規に一つ立ち上がると思います。そうしましたら、レコーディングしたい操作を実際に行ってみましょう。


試しにこのサイトをヤフーで検索してみましょう。新規に立ち上がったブラウザのURLにヤフーのアドレスを貼り付け、業務自動化研究所で検索します。


レコーディングしたい操作がすべて終わったら、ブラウザを閉じコマンドプロンプトを見てみましょう。




無事にレコーディングが完了しました。これをコピーしてPythonのコードとして使用できます。Ctr + A → Ctr + Cとかでコピーすれば大丈夫です。


注意点として、現時点のバージョンは一部にバグが残っています。私が気が付いたのは、プルダウン選択の場合の文言のスペルミスです。Pythonで実行する場合エラーメッセージが出ますのですぐに気が付きます。


本日はここまでです。


playwright-pythonの注意点として、プレビュー版と今回の正式版で、コードに変更が入っています。公式にはこれしか書いていませんが、実際にはほぼすべてのコードに変更が入っています。


# old  browser.newPage()

# new  browser.new_page()


旧playwright-pythonは、JAVAスクリプト版との互換性を重視し、あえてPythonの命名規則に従っていなかったのですが、その点が全面に修正されました。プレビュー版を使ったことがない方には無関係なのですが、先ほどご紹介したレコーディング機能のスペルミスもこれが原因です。この法則を知っていれば、スペルミスがあっても修正できますね。


ちなみに、playwrightはクロームの拡張機能、Headless Recorderを用いてレコーディングを行うことも可能です。便利ではありますが、こちらもあくまでplaywright用のレコーディングで、playwright-pythonで使うには先ほどのスペルの修正が必要です。


どこか一か所だけレコーディングしたい時とかはHeadless Recorderが便利です。全体をレコーディングしたい時はplaywright codegenが良いと思います。
















Comentarios


bottom of page