LoginSignup
10
9

More than 5 years have passed since last update.

Firefox を更新したら selenium が動作しなくなった件

Last updated at Posted at 2016-06-11

更新前の環境

OS: Ubuntu 14.04
Firefox: 46.0.1
selenium: 2.53.5(Python 版)

更新後の環境

Firefox: 47.0
OS と selenium のバージョンは変更なし。

自作の Python コマンドを実行したら下記のエラーが出た。

seleniumエラーメッセージ
Traceback (most recent call last):
()......
    raise WebDriverException("The browser appears to have exited "
selenium.common.exceptions.WebDriverException: 
Message: The browser appears to have exited before we could connect. 
If you specified a log_file in the FirefoxBinary constructor, 
check it for details.

Firefox のアップグレード前までは正常に動作していたのだが......。

処方箋

選択肢 1: Firefox 46.0.1 へのダウングレード
この記事を投稿した 6/12 時点までの選択肢。

選択肢 2: Firefox 47.0.1 へのアップグレード
この記事へコメントをいただいた yasunori さんからの情報だが、
47.0.1 へ更新すると Selenium が動くようになる。

Firefox 46.0.1 へのダウングレード

下記のページから旧バージョンの Firefox を入手する。

インストール

  1. 圧縮ファイルを解凍する。
    tar jxf firefox*.tar.bz2 -C $HOME

  2. Firefox のプロセスを全て終了する。

  3. ~/firefox/firefox -ProfileManager を実行する。

  4. 新しいプロファイルを作成 > 作成したプロファイルを選択 >
    今後このプロファイルを使用する > Firefox を起動

  5. sudo apt-get purge firefox を実行して
    Firefox 47.0 をアンインストール。

PATH の設定

.bashrc へ下記を追記する。

~/.bashrc
export PATH=$HOME/firefox:$PATH

Firefox の設定変更

設定 > 詳細 > 更新の確認は行わない(非推奨: セキュリティリスク)

これを忘れると結局 Firefox 47.0 へ更新されてしまい、
selenium が動かなくなる。

Note:
「更新の確認は行うが、インストールするかどうかを選択する」
という選択肢もあるが、これにしておくと Windows10 ばりに
「更新してください」と通知が出まくる。

無論、「更新の確認は行わない」のまま長期間放置するのは危険なので、
selenium が Firefox 47.0 に対応するまでの一時凌ぎであることを
忘れずに!!

Firefox 47.0.1 へのアップグレード

7/29 私の環境(Ubuntu 14.04)で試してみた。
通常であれば apt-get upgrade で更新されるはずだが、
実行しても Firefox 47.0 のまま ......。
たぶん Linux の原則に従ってバージョンを固定しており、
Ubuntu 側でセキュリティアップデートとしては認知していないのだろう。

仕方がないので下記のページからパッケージをダウンロードすることにした。

インストールと PATH の設定

ダウングレードする場合と同じ手順。

副作用

Firefox が apt-get の管理下から外れてしまう。
Firefox そのものに自動更新機能が搭載されているので問題ないと思うが、
「それは困る!!」という人は PhantomJS へ乗り換えるべし。

10
9
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
9