MENUCLOSE
twitter ツイッターfeedlyRSS

オンスタでは、オンラインで学習するために役立つコンテンツを掲載しています。そのほか、UdemyをはじめとしたEラーニングサービスの紹介も行っています。

オンスタ | オンラインで学習するための近道になるサイト
夏だしオバケ怖いってことでPhantomJSを使ってスクレイピング試してみた

夏だしオバケ怖いってことでPhantomJSを使ってスクレイピング試してみた

公開日:2017年08月04日
最終更新日:2017年08月04日
オンスタ運営
プログラミング
ホーム > 全記事一覧 > 制作 > エンジニア > マークアップ > 夏だしオバケ怖いってことでPhantomJSを使ってスクレイピング試してみた

Warning: Undefined variable $_cat_enginieer_flag in /home/growgroup/online-study.jp/public_html/wp-content/themes/online-study-wp/views/object/components/related-posts-inline.php on line 37
このエントリーをはてなブックマークに追加
夏だしオバケ怖いってことでPhantomJSを使ってスクレイピング試してみた
【PR】Udemyならスマホでもタブレットでも、いつでも気軽に学べます。

こんにちは!最近めっきりカップラーメンを食べることがなくなり(めっちゃしょっぱく感じる)、
「歳食ったなぁ」としみじみ思う僕ですが、まだまだ若い人たちには負けないつもりで頑張っていこうと思います!
今回はPhantomJSを使って、ホームページをスクレイピング(キャプチャーを取る)するということを試したので、それを記事にしてみました!

ご興味あれば是非!では行ってみよ〜

PhantomJSって?

http://phantomjs.org/

通常webページを閲覧するためにはGoogle ChromeやFirefox、Safariといったブラウザが必要ですが、
PhantomJSにはwebkit(レンダリングエンジン)が組み込まれており、通常のブラウザを使わなくても、ヘッドレスブラウザを作成して、
webページを表示したり、JavaScirptで操作したりといったことができます。
実際の操作はターミナルなどCUIで行います。僕の環境がMacですので、ここではターミナル操作でお話していきます。

※補足
操作するための画面(GUI)・インターフェイスが無いブラウザをヘッドレスブラウザと呼びますが、ヘッドレスブラウザにはたくさんの種類があります。
以下に明るいので、ご興味あれば覗いてみてください。
https://github.com/dhamaniasad/HeadlessBrowsers
また、Google Chromeもヘッドレスモードが実装されたみたいですが、まだ試せていません( ; ;)

PhantomJSで何ができるの?

ヘッドレスブラウザを立ち上げて、webページを操作できるということで、
テストの自動化やスクレイピングなどによく使われるそうです。

下準備

物は試しです。PhantomJSを動かすための準備をしましょう!

PhantomJSのインストール

直接以下からダウンロードしてということも可能ですが、
http://phantomjs.org/download.html
パスを通すといった設定が必要ですので、今回はnpmを使ってインストールして使おうと思います。

 

インストールされたか確認

バージョンが表示されればOKです

記述方法と実行の基本

→ jsファイルを作成して、そこに記述
→ 記述後はターミナルからコマンドを打って実行
って流れです。

動かしてみる

それではここから実際に動かしてみましょう!

メッセージを表示してみます。

適当にディレクトリとjsファイルを用意します。
phantom-test
┗ sample.js

作成したsample.jsに以下を記述します。

記述を書いたら実行してみましょう。
実行はターミナルから行います。

ターミナル上に「これはこれはテストです。」とメッセージが表示されればOK!

 

ヘッドレスブラウザを立ち上げてキャプチャを撮る

では実際にキャプチャを撮ってみましょう!

GrowGroupのキャプチャが撮れました!
デフォルトではカレントディレクトリに保存されます。

 

キャプチャのサイズを変更してみる

撮ってみるとわかるのですが、キャプチャが小さいですね
弊社のWEBサイトはレスポンシブデザインでスマートフォンと切り替わるようになっているので、
スマートフォン版がキャプチャーされます。
PC版でキャプチャが欲しいのでのサイズを変更してみましょう!
せっかくなのでファイル名も変更します!

PC版、スマホ版のキャプチャが撮れました〜( ^ ^ )

 

ページ内の情報を取得してみる

ここで今日の記事は終了(早い)ですが、せっかくですので他の操作もしてみましょう。
全然実感がわかないですが、PhantomJSでpage.openでページにアクセスしている状態になっているので、JavaScriptを使ってブラウザを操作できる状態にあります。
今回はディスクリプションを取得して表示してみましょう!

ターミナルにディスクリプションが表示されればOKです!

むすびに

いかがでしたか?PhantomJSのAPIを調べてごにょごにょするより、
CasperJSを使った方がスクレイピングは早いなんてご意見もチラホラ散見しますが、
機会があればCaspterJSも触ってみようと思います!

あと最後になりましたが
このたびワタクシ、人間に転職いたしました。
今後はペンネーム「ケイジャニストやまだ」として執筆していきます!

さらばゴリラとしての日々、
こんにちは人間ライフ!

何かいいネタあったら教えてください!
以上、ゴリラこと、ケイジャニストでした〜♪

 

 

 

 


【PR】Udemyならスマホでもタブレットでも、いつでも気軽に学べます。

Udemyを実際に体験した方の感想記事もぜひご覧ください♪

関連コンテンツ


Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
CSVを使ってWordPressの投稿、カスタム投稿へ記事データを流し込む方法(Really Simple CSV Importer)
WordPress
エンジニア
プログラミング
制作
公開日: 2019年10月31日
最終更新日: 2022年01月17日
CSVを使ってWordPressの投稿、カスタム投稿へ記事データを流し込む方法(Really Simple CSV Importer)
  • # Really Simple CSV Importer
  • # WordPress
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
Webサイトのちょっとしたテスト用ツールを作った
テクノロジー
プログラミング
公開日: 2017年02月21日
最終更新日: 2017年02月21日
Webサイトのちょっとしたテスト用ツールを作った
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
【Code.org】4歳から18歳まで!ビジュアルプログラミング言語でプログラミングが学べる『Code.org』について調べてみた
エンジニア
オンライン学習
プログラミング
制作
公開日: 2020年07月21日
最終更新日: 2022年01月17日
【Code.org】4歳から18歳まで!ビジュアルプログラミング言語でプログラミングが学べる『Code.org』について調べてみた
  • # Code.org
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
現場で働いているからわかる!人気プログラミング言語を徹底比較
プログラミング
公開日: 2019年07月10日
最終更新日: 2019年07月10日
現場で働いているからわかる!人気プログラミング言語を徹底比較
  • # プログラミング言語
  • # 比較
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
[JavaScript_中級者への道]  プロトタイプについて – [2] クラスを定義して呼び出す
プログラミング
公開日: 2020年02月18日
最終更新日: 2022年01月17日
[JavaScript_中級者への道] プロトタイプについて – [2] クラスを定義して呼び出す
  • # ES6
  • # JavaScript
  • # クラス
  • # プロトタイプ
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
JS初心者必見!JavaScriptの勉強ができるWEBサービス紹介【タイプ別】
プログラミング
マークアップ
公開日: 2018年12月28日
最終更新日: 2022年01月17日
JS初心者必見!JavaScriptの勉強ができるWEBサービス紹介【タイプ別】
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
「HTML5プロフェッショナル認定試験」合格に向けての勉強方法〜資格取得を目標にして知識を深めよう〜
プログラミング
マークアップ
公開日: 2017年10月20日
最終更新日: 2017年10月20日
「HTML5プロフェッショナル認定試験」合格に向けての勉強方法〜資格取得を目標にして知識を深めよう〜
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
【仮想環境構築】Vagrant + VirtualBoxで「作って壊せる」テスト環境を作ってみよう!
システム
テクノロジー
プログラミング
公開日: 2018年03月16日
最終更新日: 2018年03月16日
【仮想環境構築】Vagrant + VirtualBoxで「作って壊せる」テスト環境を作ってみよう!
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
【JSプラグイン】スクロール連動型アニメーション!jQuery不要のJSプラグイン「AOS」!
Webデザイン
プログラミング
公開日: 2017年07月17日
最終更新日: 2022年01月17日
【JSプラグイン】スクロール連動型アニメーション!jQuery不要のJSプラグイン「AOS」!
オンスタ運営

Warning: Trying to access array offset on value of type bool in /home/growgroup/online-study.jp/public_html/wp-content/plugins/wp-word-count/public/class-wpwc-public.php on line 123
【PHP】PHPでライブラリ管理!「Composer」を使ってみよう
テクノロジー
プログラミング
公開日: 2017年12月06日
最終更新日: 2017年12月06日
【PHP】PHPでライブラリ管理!「Composer」を使ってみよう
オンスタ運営
全記事一覧

web制作者にオススメのオンライン学習サイト「Udemy」

世界最大級のコースがラインナップ!電子書籍サイト「Udemy」

世界最大級のコースがラインナップ!オンライン学習サイト「Udemy」

「Udemy」ではいつでもどんなトピックでも、専門家が教える何千ものコースを用意されており、無料で学べるコースも多数あります。もうちょっと勉強したいな。スキルアップしたいな。と思ったら是非チェックしてみてください。