空き時間を活用しつつ、 puppeteer-ruby と playwright-ruby-client という2つのOSSを育てている。puppeteer-rubyは Google Chromeチームによる元祖Puppeteer をまるっとRubyで再実装したライブラリで、playwright-ruby-clientは PuppeteerからフォークしてMicrosoft(のなかの元Chromeチームメンバー)が育てているPlaywright のクライアントAPIをRubyで実装したライブラリだ。
この記事を書いたときには、「Playwrightは自身が起動したブラウザしか自動操作できない」という大きな欠点を挙げていた。
しかし、その数週間後、Playwright 1.9.0で browserType.connectOverCDP
というAPIが追加されて、こいつがまさに puppeteer.connect
相当のことをやってくれるようになった。
つまり、「Seleniumの補強として使う」ということが、PuppeteerのみならずPlaywrightでもできてしまうようになった。
現在はpuppeteer-rubyとplaywright-ruby-clientの2つのOSSを現在育てているけど、今後は本格的にplaywright-ruby-clientのほうを注力していくことになるかもしれない。