【チャレンジ精神】phantomJSを試す。 - 後編 | 一人男子会

一人男子会

何となく思った事を書いていきます。(ピグ関連含む)


前篇でpolymerのplaygroundがまともに
レンダリングされない事が分かった。


何が問題なのかさっぱりだ。


公式サイトのFAQを覗いてみると

Q: Which WebKit version is used by PhantomJS?

A: If you want to know HTML5/CSS3/other features supported by PhantomJS, using WebKit version is not a good idea. See Supported Web Standards documentation page for details.

If you really like to get the WebKit version, find it via the user agent, run the examples/useragent.js. The actual version depends on the libraries with which PhantomJS was compiled.


となっている。
とりあえずexamples/useragent.jsを実行してみる。
PhantomJSがビルドされた際の情報を表示出来るらしい。
cmd>phantomjs.exe .\examples\useragent.js
phantomjs_20
ふむふむ。


悲しい事に、
見たところでこの情報が何の役に立つのか
いまいちピンとこない。

なぜなら、
俺はWebKitのバージョンがどうこうを知らない。

まぁ、FAQに記載がある時点で、
WebKitのバージョンに関して
色々と難ありなのだろう。


素直にsupported web standardsを開いてみる。

色々と対応しているらしいが、
それでも難しいと言う事は分かった。



あきらめて
割り切って方向転換しよう。


要はChromium系でheadlessなものがあればよいのだ。


Chromiumと言えばChrome様。

ChromeDriverと出会うのは必然だ。
ココからダウンロードしてインストール。

jsでやりたいので、
nodejsインストール
selenimum-webbrowserを突っ込む。
chromedriverは別途落としてパスを切る。

後はサンプルを動かすだけ。
webdrivertest.js

var webdriver = require('selenium-webdriver');

var keyword = "chris le twitter";

var driver = new webdriver.Builder().
withCapabilities(webdriver.Capabilities.chrome()).
build();

driver.get('http://miyataroid999.sakura.ne.jp');


早速実行
cmd>node webdrivertest.js

おぉ、
phantomjs_21
ふふ、no-headless...


うーん、
headlessだからこそのphantomなのであって、
がっつり画面があるのはなぁ・・・。


phantomの中身を追うのはぼちぼちやるとして、
「phantomを触る」と言う目的は
達成したと思いたい。

対polymerの代替え案も出したし、
これで良しと言う事にする。



phantomは触った。

これだけは言えるはず。


---- 追記 -----
phantomjsの中身を理解する為の一歩
百聞は一見にしかずだ。
とりあえず中見てみよう。

cmd>git clone http://github.com/ariya/phantomjs
cmd>cd phantomjs
cmd>build


Error: "qmake.exe is missing Can't proceed."


ここまできて
qmakeが必要な事が分かった。

ココからダウンロードしてインストール。

インストールするパッケージのバージョンは5.3

インストール先はc:\Qt
qmake.exeの所在は
c:\Qt\5.3\msvc2010_opengl\bin\
だ。

pathに追加してリトライ。
cmd>build

で、でかい・・・。

まぁ、レンダリングだ何だ
高機能だもんなぁ・・・。

時間と能力的に足りなさげだ。