PhantomJSのQXcbConnection Could not connect to displayを解決する方法

提供: Linux入門
移動: 案内検索
スポンサーリンク

PhantomJS とは、JavaScript API を使った スクリプタブルなヘッドレス(ディスプレイのない)なWebKit ベースのブラウザ です。

読み方

PhantomJS
ふぁんとむ じぇい えす

概要

PhantomJS は、WebKit ベースのブラウザ画面のないブラウザです。ウェブページのスクレイピング、スクリーンキャプチャ、テストなどを自動化できます。

Windows 10 の WSL の Ubuntu に PhantomJS をインストールして実行しました。 PhantomJS を実行すると下記のエラーが発生しました。 ディスプレイに接続ができないと言っています。

$ phantomjs loadjs.js https://login.yahoo.co.jp/
QXcbConnection: Could not connect to display
PhantomJS has crashed. Please read the bug reporting guide at
<http://phantomjs.org/bug-reporting.html> and file a bug report.

使い方

解決策は、 phantomjs にディスプレイがないことを教えてあげることです。環境変数 QT_QPA_PLATFORM を offscreen として設定すれば、エラーがでなくなります。

$ env QT_QPA_PLATFORM=offscreen phantomjs loadjs.js \
https://login.yahoo.co.jp/

関連項目




スポンサーリンク