スクレイピング対象サイトの難易度を見極めるコツ

スクレイピングをしたいけど、対象サイトの難易度がわからない。。。
依頼しようにも、まずできるかどうかくらい自分でわかるようになりたい・・・

スクレイピング依頼主

今日はこんなお悩みにお答えしていこうと思います。

まず、結論!!

  1. JavaScriptをゴリゴリに使用したサイト
  2. 欲しい情報が、クリック等しないと画面(HTML)上に現れない
このあたりの要素を満たせば満たすほど、難易度は上がってくるのかなと思っています。

最近のwebサイトについて

最近のwebサイトは、JavaScriptという言語を用いて画面を構築していることが多いです。
なので、昔より難易度が上がったと思っています。
とはいえ、できなくなったというわけはなく何かしらツール等を駆使しながらやりきることはできます。

JavaScriptを使ったサイトを見分けるには?

JavaScriptを使ったサイトと言われてもいまいちピンとこないですよね。
多少の語弊はありますが、ざっくりいうと、
何かしらのページ遷移時に、画面のレンダリングが行われず、シームレスに画面が遷移されるサイトがJavaScriptを使ったサイトです。
文字に起こしてもわからないですよね笑

ページ遷移時に、画面のレンダリングが行われる見た目

例えば、私のサイトのトップページから、詳細記事へ遷移するときは、どうでしょう?

この記事をクリックしてみましょう!!

その時に見るポイントは以下です!

タブのファビコンが表示されているところがくるくる回ってる見た目になります!!
また、ブラウザのリロードボタンがバッテンになってるのがわかります。

ページ遷移時に、画面のレンダリングが行われない見た目

結論から言うと、上記で見るポイント部分が、ページの遷移時に行われていないかどうかを見ればOKです。

わかりやすいのがこちらです。


ページの遷移かと言われたら、違いますが、、、
イメージとしてはこの動作と変わりありません。
新着記事とおすすめのタブを押した時に、画面がシームレスに切り替わってるのがわかります。
この時に、タブのファビコンが表示されているところもブラウザリロードボタンもなんら変わりありません。

これが、JavaScriptを用いた動きの見極め方です。

サイトを回遊したときに、その部分が変わらずに、遷移しまくってるようなサイトは難易度が高いんだなぁと感じ取ってもらえればいいかと思います。

終わりに

筆者は、今までのいくつかのスクレイピングの案件をこなしてきましたが、
近年のほうが、難易度は高くなっている印象を受けます。
とはいえ、ツールの進化もあって今の所できなかったものはありません。
どうにか試行錯誤してやりきるといった感じです。

最後に、今回書いた内容を簡単にまとめておきます。

  • JavaScriptを用いて構築されているサイトは難易度が高くなる
  • JavaScriptを用いて構築されているサイトを判断するには、ブラウザリロードボタンに変化があるかどうかを見る
  • JavaScriptを用いて構築されているサイトを判断するには、ファビコン部分にくるくるが出ないかどうかを見る

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です