11章JavaScriptのスクレイピング

クライアント側のスクリプト言語は、Webサーバではなくてブラウザで実行される言語です。クライアント側言語の成功は、言語を正しく解釈して実行するブラウザの能力に依存します(これがブラウザでJavaScriptを簡単に無効化できる理由です)。

全ブラウザ作成者の標準化合意が困難だというだけの理由から、サーバ側の言語に比べて、クライアント側の言語がはるかに少なくなっています。これは、Webスクレイピングに取っては朗報です。言語が少なければ少ないほど扱いが容易です。

ほとんどの場合、オンラインで頻繁に出会うのは、(Flashアプリケーションで使われる)ActionScriptとJavaScriptの2つしかありません。ActionScriptは、10年前と比べると今日ではあまり使われなくて、オンラインゲームのプラットフォームとして、あるいは、Webサイトの「紹介」ページを表示するためのマルチメディアファイルのストリーミングに使われています。とにかく、Flashページをスクレイピングする需要はあまりないので、現在のWebページで普遍的なクライアント側言語、JavaScriptに焦点を絞ります。

JavaScriptは、今日のWebでは、最も普及していて、サポートが行き届いているクライアント側のスクリプト言語です。ユーザ追跡情報、ページをリロードせずにフォームサブミット、マルチメディアの埋め込み、オンラインゲーム全体のパワーアップなどに使われています。見たところは単純なページが、複数のJavaScriptを含むこともよくあります。ページのソースコードで、<script>タグの間に挟まれているのがわかります。

<script> alert("This ...

Get PythonによるWebスクレイピング 第2版 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.