CentOSにPhantomJSとCasperJSをインストールする
以前、CentOSに最新のPhantomJSをインストールしようとするとエラーが発生するという記事を書きました。shinsuke789.hatenablog.jp
その後、さらに調べてみると古いバージョンのバイナリが配布されていることがわかり、これをインストールすると問題なく使用できたので、その時の手順を紹介します。
環境
OS | CentOS 6.4 |
---|---|
PhantomJS | 1.9.8 |
CasperJS | 1.1.0-beta3 |
手順
PhantomJS
1.PhantomJSのBitbucketよりバイナリファイルをダウンロードします。そのままwgetすると長いURLになってしまうので、別名で保存します。
# 保存先に移動する cd /usr/local/src # バイナリをダウンロードする wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2 -O phantomjs-1.9.8-linux-x86_64.tar.bz2 # 解凍する tar jxvf phantomjs-1.9.8-linux-x86_64.tar.bz2 # 解凍後のディレクトリ名を変更する mv phantomjs-1.9.8-linux-x86_64 phantomjs # 移動する cd phantomjs
2.「/usr/local/bin」にシンボリックリンクを作成します。
# phantomjsディレクトリで実行する(/usr/local/src/phantomjs) ln -sf `pwd`/bin/phantomjs /usr/local/bin/phantomjs
3.インストールバージョンを確認します。
# 「/usr/local/src/phantomjs/bin」で実行する phantomjs --version 1.9.8
パスの設定は行わず、そのままCasperJSのインストールを行います。
CasperJS
1.公式サイトのインストール手順(git)に従ってインストールを行います。
# gitがなければインストールする yum install git # gitより取得する(作業ディレクトリ:/usr/local/src) git clone git://github.com/n1k0/casperjs.git # ディレクトリに移動する cd casperjs # 「/usr/local/bin」にシンボリックリンクを作成する ln -sf `pwd`/bin/casperjs /usr/local/bin/casperjs
2.インストールバージョンの確認を行います。
casperjs --version
1.1.0-beta3
この時点でPhantomJS、CasperJSともパスが通っているので、追加の設定は不要です。
PhantomJS掲載の雑誌
- 作者: 中川勝樹,山内沙瑛,舟崎健治,吉荒祐一,今井雄太,八木橋徹平,安川健太,近藤宇智朗,奥野幹也,天野祐介,賈成カイ,伊藤直也,住川裕岳,北川貴久,菅原一志,後藤秀宣,久森達郎,登尾徳誠,渡邊恵太,中島聡,A-Listers,小俣裕一,はまちや2,川添貴生,石本光司,舘野祐一,沖田邦夫,澤村正樹,卜部昌平,吉藤博記,片山暁雄,平山毅,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2013/10/24
- メディア: 大型本
- この商品を含むブログ (3件) を見る
CasperJS掲載の雑誌
- 作者: 鶴長鎮一,宮下剛輔,縣俊貴,中村知成,西尾泰和,新井俊一,南川毅文,伊藤直也,石垣憲一,浅木朗,渡邊恵太,中島聡,はまちや2,竹原,川添貴生,河合宜文,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2014/04/24
- メディア: 大型本
- この商品を含むブログ (6件) を見る
ChromeがフリーズしすぎるのでFirefoxに乗り換えたら快適になった
会社のパソコンでは、ブラウザにGoogle Chromeを使用していました。
以前よりページの読み込み時にフリーズすることがあり、試行錯誤して対処方法を探していました。
私が試した方法
以前の記事に3通り試した方法を書きました。
環境
会社のパソコンの環境は次のとおりです。
メーカー | lenovo |
---|---|
モデル | T520 |
CPU | Core i5 2520M |
メモリ | 8GB |
HDD | 500GB |
スペック的には十分なのですが、Chromeではなぜかフリーズします。
意味がわかりません。
HDDに障害があるのではと思い、チェックディスクや障害確認ツール等で調べましたが全く異常なしでした。
何をやっても改善されないので、諦めてブラウザをFirefoxに乗り換えることにしました。
Firefoxに乗り換えてから快適!!
Firefoxに乗り換えると、Chromeでのフリーズのストレスから解放され、快適にブラウザイングできるようになりました。
もっと早く乗り換えていたらと思いました。
Chromeと少し使い勝手が異なる所がありますが、慣れれば特に問題なしです。
Firefoxをもっと快適にするための設定
普通に使っても快適ですが、更に快適に使用するためにキャッシュをメモリ上に置くようにします。
次のサイトで詳しく解説しているので参考にして下さい。blog.halpas.com
IIJmioのデータ量が4月から増量される!キャリア契約が不要になるのも近いかも!
IIJmioで2015年4月1日から無料データ量が現行より増量されます。
IIJmio:サービス仕様改定のお知らせ(IIJmio高速モバイル/Dサービス)
3GB,5GB,10GB 価格はそのままデータ増量!|IIJmio
月額とデータ増加量
月額料金は据え置きで、データ量のみ増加します。
プラン | 容量 | データのみ月額 | 音声+データ月額 |
---|---|---|---|
ミニマムスタートプラン | 2GB→3GB | 900円 | 1,600円 |
ライトスタートプラン | 4GB→5GB | 1,520円 | 2,220円 |
ファミリーシェアプラン | 7GB→10GB | 2,560円 | 3,260円 |
※月額は税抜き
以下のパッケージ、カウンターからの契約も対象となります。
もうキャリア契約は不要!?
最安のミニマムスタートプランでも3GBまで制限なしで使えるので、高額なキャリア契約は不要になるかもしれません。
料金プランがわかりやすいauと比較してみます。
データプランのみ比較
容量 | IIJmio | au | 差額 |
---|---|---|---|
3GB | 900円 | 4,200円 | 3,300円 |
5GB | 1,520円 | 5,000円 | 3,480円 |
10GB | 2,560円 | 8,000円 | 5,440円 |
音声通話で比較
IIJmio | au | 備考 | |
---|---|---|---|
音声通話 | 700円 | 2,700円 | auはかけ放題 |
データ通信(3GB) | 900円 | 4,200円 | |
LTE NET | なし | 300円 | |
合計 | 1,600円 | 7,200円 | 差額5,600円 |
auは電話がかけ放題なので比較しにくいですが、5,600円(4.5倍)も差があります。
その差額でauの月額料の約8割をまかなえてしまいます。
節約分を貯めていくと約1年ぐらいで新品のスマホが買えてしまいますね。
IIJmioの特徴として、データ量を翌月まで繰り越すことができます。
3GBの場合、最大ひと月で6GBまで使うことができます。
6GBとなると足りないということはなかなかないのではないでしょうか。
贅沢な悩み、無料データ量が使い切れない
データ量が増えてうれしいのですが、そこまでデータ通信しない方には使い切れないと思います。
私は、現在ミニマムスタートプラン(現行2GB)を利用しています。
毎日、スマホで頻繁に通信をしてるわけではないので、2GB/月を使い切るのに困っています。
おすすめのSIMカード
他にもIIJmio系列のSIMカードとして「BIG SIM」「DMM SIM」があります。
基本的にIIJmio系列のSIMカードを契約しておけば安心だと思います。
同じサービスでも、料金、データ量、オプションが異なっているので使い勝手の良いサービスを選択すればいいと思います。
DMM SIM
料金を節約したいというなら「DMM SIM」の1GBプランが660円と最安でおすすめです。
データ量も細かく区切られていてプランが豊富です。
今回IIJmioがサービス改定を発表したので、DMMとプランが同じものがでてきました。
ひょっとするとDMMもサービス改定を行うかもしれません。
サービスへの要望
キャリアでは、条件を満たすと無料でデータ量を増量するサービスがあります。
MVNOもそれをマネてサービス向上を行うのではと思います。
キャリアからMVNOへMNPして使っている方には、データ量が増えた方がいいと思います。
でも、スマホはデータ通信専用、モバイルルータを持っている、複数端末でSIMカードを使っているなど、SIMカードをデータ通信のみで使用している方には、無料データ量を細かく分けて、料金を安くして欲しいと思います。
私の場合、月1.5GBもあれば十分なので、データ量を増やすのではなく料金を安くしてほしいです。
まとめ
2015年5月からSIMロック解除が義務化されるので、携帯関連に変化があり競争が激化すると思われます。
今までは携帯本体と通信会社はセットとして扱われてきましたが、それが別々に選択できるようになってきます。
まだまだSIMフリー端末は、高い印象があり、身近に購入できる存在ではないです。
それも時間とともに安くなり、家電と同じように端末のみで購入できる日がくるでしょう。
そういう環境が整ってくると、docomo、au、softbankで契約する意味というのはなくなってくるはずです。
いくらMNPで乗り換えてスマホが無料でもらえるからといっても、通信費が月7,000円以上かかるのはメリットが薄いように感じます。
目先の利益よりもトータルでどれだけお得になるのかを考えて契約するのがいいと思います。
PhantomJSをCentOSでビルドしたらエラーが出てインストールできない
既存のサイトからデータを取得して欲しいという要望があったので、PhantomJSを使ってプログラムからブラウザを操作し、スクレイピングすることを最近行っています。
Macにはすんなりインストールできて、プログラムもある程度出来上がったのでサーバーにもインストールして動作確認をしてみようと、PhantomJSをインストールしてみたけどエラーが出てインストールが完了しませんでした。
その時のエラー内容を記載しておきます。
まだきっちり調べてませんが、他の人も問題に上げているようで解決方法がはっきりしていないように感じます。
環境
CentOS | 6.4 |
---|---|
PhantomJS | 1.9 or 2.0 |
PhantomJSのインストール方法
Linux用バイナリにはまだ問題があるようで、ソースからのインストールを推奨すると公式サイトには書いてあります。
Binary packages for Linux are still being prepared. There are still issues to be solved until a static build is available (see issue 12948 for more details).
In the mean time, it is recommended to build the Linux version from source.
バイナリの代わりにソースからインストールする方法も書かれているので、それに従ってインストールします。
Build | PhantomJS
まず必要なパッケージをyumでインストールします。
sudo yum -y install gcc gcc-c++ make flex bison gperf ruby \ openssl-devel freetype-devel fontconfig-devel libicu-devel sqlite-devel \ libpng-devel libjpeg-devel
その後、PhantomJSのソースをGitから取得しビルドします。
cd /usr/local/src git clone git://github.com/ariya/phantomjs.git cd phantomjs git checkout 2.0 ./build.sh
PhantomJS2.0をビルドした結果
2.0でビルドすると次のエラーが発生し、インストールに失敗します。
最終あたりのログを抜粋しています。
Encountered 4 configuration warning(s): ! QtQuick module not found, QML APIs will not be built ! Missing GStreamer or QtMultimedia, disabling HTML5 media element support ! Missing QtTest module, disabling DumpRenderTree, WebKitTestRunner and tests ! QtWebKitQml will not be build. It is not supported with static linking The WebKit build was disabled for the following reasons: * Missing gperf from PATH * Missing ruby from PATH make: `first' に対して行うべき事はありません. Building main PhantomJS application... cd src/ && ( test -e Makefile.phantomjs || /usr/local/src/phantomjs/src/qt/qtbase/bin/qmake /usr/local/src/phantomjs/src/phantomjs.pro -o Makefile.phantomjs ) && make -f Makefile.phantomjs Project ERROR: Unknown module(s) in QT: webkitwidgets make: *** [sub-src-phantomjs-pro-make_first-ordered] エラー 3
PhantomJS1.9をビルドした結果
2.0では失敗するので1.9でやればうまくいくと書かれているものがあったので、やってみたけどこれも失敗します。
# /usr/local/src/phantomjsで
git checkout 1.9
./build.sh
最終あたりのログを抜粋しています。
g++ -m64 -Wl,-O1 -Wl,-rpath,/usr/local/src/phantomjs/src/qt/lib -o ../bin/phantomjs phantom.o callback.o webpage.o webserver.o main.o csconverter.o utils.o networkaccessmanager.o cookiejar.o filesystem.o system.o env.o terminal.o encoding.o config.o childprocess.o repl.o gif_err.o gifalloc.o egif_lib.o gif_hash.o quantize.o gifwriter.o mongoose.o linenoise.o utf8.o qcommandline.o minidump_file_writer.o convert_UTF.o md5.o string_conversion.o crash_generation_client.o exception_handler.o log.o linux_dumper.o linux_ptrace_dumper.o minidump_writer.o file_id.o guid_creator.o memory_mapped_file.o safe_readlink.o moc_phantom.o moc_callback.o moc_webpage.o moc_webserver.o moc_networkaccessmanager.o moc_cookiejar.o moc_filesystem.o moc_system.o moc_env.o moc_config.o moc_childprocess.o moc_repl.o moc_qcommandline.o qrc_phantomjs.o qrc_ghostdriver.o qrc_WebKit.o qrc_InspectorBackendStub.o -L/usr/local/src/phantomjs/src/qt/lib -L/usr/local/src/phantomjs/src/qt/plugins/codecs -lqcncodecs -L/usr/local/src/phantomjs/src/qt/lib -lqjpcodecs -lqkrcodecs -lqtwcodecs -lQtWebKit -lQtGui -lfreetype -lfontconfig -lQtNetwork -lQtCore -lm -ldl -lrt -lpthread /usr/bin/ld: cannot find -lQtWebKit collect2: ld はステータス 1 で終了しました make[1]: *** [../bin/phantomjs] エラー 1 make[1]: ディレクトリ `/usr/local/src/phantomjs/src' から出ます make: *** [sub-src-phantomjs-pro-make_default-ordered] エラー 2
WiMAX2+の新端末「W01」を使ってみての感想
WiMAX2+が2月19日までなら無制限で使えるということでGMOとくとくBBで新端末「W01」を契約しました。
WiMAX2+を申し込んだ理由
現在So-netのWiMAXを1年契約で使っています。
WiMAX2+の新サービスが開始すると制限がかかる、WiMAXの速度が低下するというのを聞いていました。
子供がときどきYoutubeで動画を見ることがあって、7GB/月制限があるとすぐに制限にかかってしまい、128Kbpsになるとネットが出来ないに等しいのでそれは厳しいと思っていました。
現在契約しているWiMAXの更新月は、2015年5月でまだ期間はあるのですが、WiMAXを固定回線として使っているので、制限がかかるのはマズイということで、2月に入ってからすぐにWiMAX2+を契約しました。
開封レビュー
端末のW01は白を選んだので、箱はグレーで暗い感じでした。
WiMAX2+からSIMカードを使用するようになりました
端末は結構大きく感じます。簡易的な液晶保護フィルムが最初から貼られています。
端末にSIMカードを挿して電源を入れます。
電源を入れた後の時計表示。
ホーム画面。
設定画面。縦にスクロールします。
端末が届いたけど圏外!?
申し込んでから、1週間ほどで端末が届きました。
WiMAX2+からSIMカードを挿すようになっていたのでそれを行いました。
いつもながら電源を入れるだけで繋がると思っていたので、電源を入れましたがなぜか圏外の表示でした。
「制限かからないから契約したのになんで圏外?マジかよ…」と思い、若干冷や汗が出ました。
説明書を見ると「プロバイダーからの接続情報を設定する」と書いており、なんかおかしいなーと思いながらも操作をしてみました。でも、すでに接続設定はされていました。
そもそも、WiMAXは端末が届いたらすぐに使えるようになっているはずなのに…。
公式サイトでエリアを確認すると、エリア内でした。
そりゃそうだ。それを確認して申し込んだのだから繋がるはず。
ひょっとすると、家の中だと電波を掴みにくいのかなと思って、電波を掴むまで外に出ていました。
すると電波を掴んで通信が出来る状態となったので、家の中に入ると見事に繋がりました!
端末の使い勝手
タッチパネルになっていてスマホと同じ感覚で操作できます。
メニューが多いのでどこに何があるかわかりにくいと思いました。
無線LANで5GHz帯が使用できます。
2.4GHz帯で使っていると電子レンジ等と電波干渉しやすいので、そういう場所で使う場合は5GHzを使うと電波干渉がなくなります。
ただ、5GHz帯は気象レーダーと電波周波数が被っている所があるので、接続前にチェック処理が1分かかります。
電源を入れるたびに発生するので、その点が使い勝手が悪いと感じました。
WiMAX2+の速度
家の中のいろんな場所で速度測定してみました。
測定環境
使用サイト | http://www.speedtest.net/ |
---|---|
使用端末 | iPad mini 2 Retina |
無線 | 2.4GHz |
時間帯 | 日曜日の17時頃 |
測定場所
場所 | 電波表示(4段階) | 下り | 上り |
---|---|---|---|
1Fリビング(家の中心部) | 2本 | 3.85M | 0.28M |
1Fリビング(窓際) | 2本 | 2.29M | 0.08M |
1Fリビング(窓際から2m離す) | 3本 | 7.60M | 0.18M |
1F-2F階段踊り場窓際 | 3本 | 12.64M | 3.04M |
2F窓際 | 3本 | 6.21M | 0.30M |
※環境によっていろいろ変わりますのであくまで参考程度にして下さい。
先ほど測定すると、いつもより遅い感じでした。
端末が届いてからの測定の結果をまとめると、下り2M〜43M、上り0.01M〜5Mの幅でした。
WiMAXの電波特性なのか、結構不安定でムラがあります。
WiMAXと比べるとムラがあっても、最低速度が速いので遅いと感じることはなくなりました。
体感的にはかなり速く、最近のWiMAXのようにダイヤルアップ並にカクカク表示されるというのはないです。
下りは5M以上は出ているような感じで、速い時は30M以上出ているので非常に満足です。
制限がないと調子に乗っていると3GB/3日に引っかかるかもしれないので注意が必要です。
3GB/3日制限は、2015年4月以降にかかるようです。
上りは、公称値10Mなので仕方ないかもしれないですが、10K台では遅すぎです。
初速は1M以上でているようなので、軽いものだと問題ないかもしれません。
しかし、写真等アップロードすることが多い方は、Y!モバイルや光ファイバーにした方がいいかもしれません。
普通に使う分にはWiMAX2+で十分です。
速度的には十分速いので、工事が必要で開通まで1ヶ月ほど必要な光ファイバーを契約するより、工事不要で家でも外でおm使えるWiMAXの方が気楽でいいです。
気になること
電源を切って半日以上おいて、再度電源をいれると完全に電源が切れた状態から起動するみたいで、起動に少しだけ時間がかかります。
その時に限って必ず圏外表示になって繋がりません。
端末の画面に時計が表示されなかったらおかしいと思ってもいいです。
また充電が終わった後も同じ現象が発生します。
こうなったときは、外に出たり電波を掴みやすい所に移動して圏外を脱して下さい。
その後は、完全電源オフまたは充電後以外は、すぐに起動し電波も普通に掴みます。
プログラミング言語別、正規表現チェッカーまとめ
オンラインで正規表現チェックが出来るサービスをプログラミング言語別にまとめました。
代表的な正規表現本
- 作者: Jeffrey E.F. Friedl,株式会社ロングテール,長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2008/04/26
- メディア: 大型本
- 購入: 24人 クリック: 754回
- この商品を含むブログ (85件) を見る
- 作者: Jan Goyvaerts,Steven Levithan,長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2010/04/15
- メディア: 大型本
- 購入: 4人 クリック: 197回
- この商品を含むブログ (13件) を見る
- 作者: 佐藤竜一
- 出版社/メーカー: 翔泳社
- 発売日: 2005/07/12
- メディア: 単行本
- 購入: 2人 クリック: 35回
- この商品を含むブログ (16件) を見る
WiMAX2+を7GB/月制限なしで使うには2月19日までに申し込みを!!
2015年1月30日よりWiMAX2+のキャリアアグリゲーション対応端末が発売されました。
キャリアアグリゲーションサービスの開始時期
このサービスは、2月20日から新プランとともに開始されます。
新プランになると、7GB/月制限のプランと無制限のプランの2種類が選択できるようになります。
無制限になると月制限ありのプランに比べ約700円値上げになります。
WiMAX2+を「月制限なし」で使うには?
キャリアアグリゲーションサービスが開始される直前の2月19日までにWiMAX2+を契約すれば、月制限なしで2年間使用することができます。
固定回線として使われる方には、ぜひこの期間に契約することをおすすめします。
私も固定回線として使っていて、制限があると困るので新規でWiMAX2+を契約しました。
現在契約しているWiMAXは更新月まで4ヶ月残っていますが、解約してしまうと特典がもらえないので、そのまま契約しています。
「制限」の注意点
月の制限がなしといっても、3GB/3日の制限があります。
この場合の速度は700Kbpsになると言われていますが、緩い制限と思われます。
2月19日までは1GB/3日なので特に注意が必要です。
下り220Mbps対応新端末「W01」で最安なプロバイダー
調査すると「GMOとくとくBB」でした。
私もここで契約しました。
GMOとくとくBB WiMAX2+ 月額3,609円
端末 | W01 | |
---|---|---|
初月 | 無料 | 1ヶ月目 |
月額 | 3,609円 4,175円 |
2〜24ヶ月目 25ヶ月目 |
キャッシュバック | 27,390円 | クレードルなし |
実質月額 | 2,439円 |
旧端末の在庫処分セールが始まる!?
2月19日の1週間前あたりまたはその後に、キャリアアグリゲーション非対応端末(HWD15、NAD11)の在庫処分が始まるのではと予測します。
非対応端末だと月額料金が安かったり、キャッシュバック額が多かったりします。
費用を抑えてWiMAX2+を利用したいなら非対応端末もおすすめです。
キャリアアグリゲーション対応で下りが最大220Mbpsで使用できるのですが、非対応でも下り最大110bpsで使えるので速度的には十分だと思います。
実際に使っている方に聞くとWiMAXより速いと言ってました。
旧端末「NAD11」で最安なプロバイダー
調査すると新端末と同じく「GMOとくとくBB」でした。
GMOとくとくBB WiMAX2+ 月額3,609円
端末 | NAD11 | |
---|---|---|
初月 | 無料 | 1ヶ月目 |
月額 | 3,609円 4,175円 |
2〜24ヶ月目 25ヶ月目 |
キャッシュバック | 29,000円 | クレードルなし |
実質月額 | 2,377円 |
旧端末「HWD15」で最安なプロバイダー
調査すると「Racoupon」でした。
RaCoupon WiMAX
端末 | HWD15 | |
---|---|---|
初月 | 2,312円 | 1ヶ月目 |
月額 | 2,312円 3,772円 |
2〜23ヶ月目 24~25ヶ月目 |
キャッシュバック | なし | |
実質月額 | 2,424円 |