[日誌] 続・次の目標(JavaScriptの壁)

JavaScript実行後のページ取得の難しさ

次の目標へのハードル

先日、次の目標と題して、特許事務所のホームページの更新状況を提示する情報取得を目標にかかげました。みなさんに発表するまでにphpQueryライブラリー、Goutteライブラリーを検証し、Goutteを使って、各事務所のホームページやそのリンク先のホームページの情報を取得できるところまで実現できていました。MySQL(mariadbですけど)のテーブルの設計までほぼ終了していました。

検証

しかし、実際に検証してみると、Goutteでは、JavaScriptによる実行後のページをどうしても取得できないことがわかりました。

PHP-PhantomJS

ネットで調べたところ、PhantomJSというヘッドレスブラウザー(画面を表示させないブラウザー)があることがわかった。そして、PHPからPhantomJSを動作させることはできたのだが、ホームページが自動に遷移するようなJavaScriptを実行させるまでには至りませんでした。

一難去ってまた一難。phpQueryからGoutte、GoutteからPHP-PhantomJS… ちょっとPHPでの自動実行を諦めようかと思い始めました。

まとめ

PHPを使ってJavaScriptが動いているホームページの取得は難しい。ExcelのVBA+objIEで活路を見出すしかないのかもしれません。ふぅ。

Translate »