質問: ### 前提・実現したいこと 初めまして、WINDOWS 8.1~ C#7~ chrome59~です。 起動中のChromeを外部のアプリ、ツールから操作することはできますか? 任意の画面の任意のタブに対してDOM操作等をするイメージです。 C#でそういったツールを作りたいと考えています。 調べてもWebDriverだと新規で画面を立ち上げて操作というものしか 出てきませんでした。 ※以前VBAで起動中のIEをWIN32APIを使って操作することはできました。 よろしくお願いします。
回答: 可能です。 Chromeには拡張機能というIEでいうところのアドオン機能があります。 これを使用することで任意のタブのDOMを操作することが出来ます。 拡張機能で提供されている機能にNative messagingというものがあります。 これは設定されたローカルにインストールされているexeを起動して 拡張機能側とメッセージを送受信できます。 ですので、そのexeとやり取りする別のGUIなどを作成することで 拡張機能<-->通信用EXE<-->操作用のGUIのEXE というやりとりを実現できます。 あとはやりとりするメッセージを考えて必要な操作を行えるようにすれば 任意のタブのDOM操作を自由に行うことが出来ます。