Google Apps Script(GAS)

GASを利用してWebスクレイピングをやってみよう②

エクスチュアの岩川です。

前回 スクレイピングの初歩的なやり方を解説させていただきました。

スクレイピングをする際の注意点なども記載しておりますのでご覧になられていない方はこちらをご覧ください。


では早速本題に入りましょう。

前回取得できたデータは以下のようなものになっておりました。

[ 'デジタルマーケティング<br>ビッグデータ分析のExture(エクスチュア)',
  'Search',
  'Extureについて',
  'ソリューション',
  '支援事例紹介',
  'ニュースリリース',
  'エクスチュア株式会社ブログ',
  'デジタルマーケティング<br class="sp">ビッグデータ分析のExture(エクスチュア)' ]

データの形が配列になっています。

よって配列を操作するようなコードを組むだけで問題ありません。

今回はhtmlタグを消すコードを入れてみましょう。

  for(var i = 0 ; i < text.length ; i++){
    text[i] = text[i].replace(/\<[^\>]+\>/," ");
  }

実行してみましょう。するとhtmlタグが消えたデータになっているのを確認できます。

ではこのデータを実際に出力してみましょう。

今回はこちらに書いてある記事を活用しスプレッドシートへ出力してみましょう。

コードは以下のようにしております。

A1セルに配列の最初の値を出力します。

このまま実行してみましょう。

GoogleスプレッドシートのA1セルに出力されておりました。

これでスクレイピング後にGoogleスプレッドシートへ出力可能なラインが完成いたしました。

関数を作成する

しかしここでコード部分を見てみましょう。

現段階は

①簡単なスクレイピングをする

②データを整理する

③簡単な値をGoogleスプレッドシートに出力する

これだけですが結構コードの量としては増えてきましたね。

もっと複雑なコードを記述していこうとなるとこのままでは整理が大変そうです。

もちろんGASは関数を作成することが可能となっております。

作成方法は

function 関数名(){

  // ここに処理を記述しましょう

}

そして呼び出し方法は

関数名();

と至ってシンプルなコードになっております。

では実際にコードを整理していきましょう。

myscrapingという関数を作成し、帰り値で配列の頭を返すようにしました。

これで先ほどと同じような動作になり、後にコードを追加する際に便利になります。

実行・デバッグ方法

さてここで今まで関数を実行するために押していたであろう「実行」や「デバッグ」ボタンを気にしてみましょう。

隣に関数名が出ています。

これをクリックするとなんと以下のように先ほど作成した関数名も出るようになっています。

これはつまり、今はmyfunction関数でmyscrapingを呼び出していますがmyscraping関数を個別に実行することも可能となっています。

これによりデバッグ作業が早くなったり特定の関数のみ実行したいというときにも利用ができます。

Google スプレッドシートの記事でも紹介したボタン機能で関数を呼び出す際にも同様のことが可能です。


今回はスクレイピングのデータをスプレッドシートへ出力する一連の流れと関数周りの解説をさせていただきました。

エクスチュアでは様々な企業様の基本的な悩みから高度な悩みまで丁寧にお手伝いいたします。

是非お気軽にお問合せください。

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Google Apps Script(GAS)

    Google App ScriptとGoogleスプレッドシートを連携させる

    こんにちは。エクスチュアの岩川です。前回はGASを使ってWe…

  2. Google Apps Script(GAS)

    Google App ScriptでWebアプリを作る

    こんにちは。エクスチュアの岩川です。前回Google App…

  3. Google Apps Script(GAS)

    GASを利用してWebスクレイピングをやってみよう

    Webスクレイピングとはスクレイピングとはデータを収集し、使…

  4. Google Apps Script(GAS)

    【Google App Script】GASを利用してslackに投稿するbotを作る

    こんにちは、エクスチュアの岩川です。業務でSlackを使用さ…

  5. Google Apps Script(GAS)

    GoogleスプレッドシートのデータをGASで整理する【setValue・setValues編】

    こんにちは。エクスチュアの岩川です。前回のgetRangeの…

  6. Google Apps Script(GAS)

    GoogleスプレッドシートのデータをGASで整理する【getRange編】

    こんにちは。エクスチュアの岩川です。今までGASの基本的な操…

最近の記事

  1. Pythonを用いたAmazon S3の署名付きURLの発行…
  2. Snowflakeとは?Data Cloud World T…
  3. SnowflakeのData Clean Roomを基礎から…
  4. SnowflakeのData Clean Roomを基礎から…
  5. SnowflakeのData Clean Roomを基礎から…
  1. Adobe Analytics

    AdobeAnalytics:WordPressやHTML5内の動画を計測する
  2. ブログ

    Cookieについて調べてみた
  3. IT用語集

    メモリ(Memory)、仮想メモリ(Virtual Memory)って何?
  4. Tableau

    Tableau:分かりやすいLOD – INCLUDE編
  5. IT用語集

    DWH(Data Warehouse)、データマート(Data Mart)って何…
PAGE TOP