QR Send

スマホとPCのChrome間で、URLやテキストをQRコード1回のペアリングで送り合える自作Chrome拡張。アカウント不要・無料。

使ってみる →

環境構築不要で配布!ruby+seleniumのコードをexe化【chromedriver】

Selenium・自動化

本エントリーは、Selenium/Appium Advent Calendar 2018 2日目エントリーです。


rubyのコードを配布するなら環境構築が必要

rubyで書いたコードを実行してもらうならrubyのインストールやらgemのインストールやら、
seleniumであればchrome driverの設置やpathを通すなど、相手の環境で設定することが必須です。

この環境構築が結構めんどくさいので、手順を説明するってよりは遠隔で操作して設定してあげたりします。

windowsならruby + selenium webdriverも環境設定は15分で終わる

 

exe化すれば環境構築が要らない!コマンドラインの操作も要らない!ダブルクリックでそのまま実行!

windowsに限りますが、rbファイルをexe化してしまえば、コマンドラインの操作も要らずにダブルクリックだけで動作します。

今回はその方法を紹介します。フリーランスエンジニア必見かもしれません。

 

実装

まずはgoogle chromeをインストールしてください。chromdriver.exeがあっても本体のchromeがないと動きません。

 

ocraをインストール

rubyをexeかするocraをインストールします。

gem install ocra

これで準備完了

 

ocraでexe化

単純なrbファイルなら以下のコマンドで同ディレクトリにexeファイルが保存されます。

ocra sample.rb

ただ、seleniumなどのライブラリを使うとエラーが起きてしまうので以下のオプションをつけて実行しましょう。

ocra --add-all-core sample_selenium.rb

ただし、selenium webdriverでchrome driverなどを使う場合はchrome driverの設置が必要になります。
その場合はchrome driverをコードと同ディレクトリなどに置いて、pathを書きましょう。

rbファイルの中に書きます。

Selenium::WebDriver::Chrome.driver_path="./chromedriver.exe"
driver = Selenium::WebDriver.for :chrome

これで先ほどのocraのコマンドを実行すれば、chromeが立ち上がって実行されます。
感動ですね!!環境構築要りませんよ!!

 

コメント

タイトルとURLをコピーしました