【スクレイピングツール】面倒な情報収集はGoogle Spreadsheetにやらせよう!
※追記 2020年3月
DAINOTE編集部で、Pythonによるスクレイピングの方法について、無料チュートリアルを公開しました。未経験の方でもブログからデータを自動抽出できるチュートリアルなので、ぜひ試してみてください!
毎日同じような作業でこのように思っている人はいないでしょうか。
- あ~毎日ネットにアクセスして、同じデータ収集するの面倒くさいなぁ
- こういう退屈な作業、自動でやってくれないかな
- でもプログラミングできないしなぁ。勉強すんのも面倒くさいなぁ。
そんな人に朗報です。今回は、プログラムをかけない人でも、ネットから情報を自動収集する方法をまとめます。
今回使うのは、Google Spreadsheetという、エクセルに似たWeb上のアプリケーションです。実はネット上の情報を自由に取得(スクレイピング)できるツールだとは知られていません。そんな裏の使い方を今回は説明したいと思います。
必要なのは、データを収集したいページのURLとGoogle Spreadsheetだけ
≫ Excel代わりに使えるGoogleドライブ「スプレッドシート」の使い方活用術!
あとは、データを取り出したい情報を集めます。僕の場合は、自分がNews Picksにアップロードした記事が何ピックされたか調べたいので、今回は自分のNews Picksの記事のURLを準備しました。
データを取りたいURLをスプレッドシートに乗せる
(WINDOWS)取得したいページでF12を押して、入手したい情報を検索する
僕の場合はtitleがほしかったので、titleと検索するとタイトルが入っている部分のコードが見つかります。
GOOGLE SPREADSHEETで、IMPORTXML関数を利用する
僕の取得したTITLEの場合はこうです。
=IMPORTXML(B2,"/html/head/title")
これで入力を終えると、自動でデータを取得してくれます。
下までだだだーと伸ばしていくと・・・・
全部タイトルが取得できました!やったね!
PICK数も取得してみた
どうせならタイトルとピック数を見てみたいですね。今度はPicks数を探します。
この1608 picksという数字がとりたいです
このピック数、すべての記事でとってみましょうか。
さっきみたいな感じでとります。
ctrl + fで検索すると、その住所データが出てきます。
これを右クリックして、Copy > Copy Xpathを取得します。
あとは全く同じようにやってみます。
=IMPORTXML(B2,"/html/body/div[2]/div[2]/div[2]/div/div[1]/div[3]")
そうすると全部のピック数を取得してくれます。もちろんスプレッドシートもエクセルと同じように使えるので、フィルタを使って並び替えたりもできます。
プログラミングを覚えなくても、全然できるので重宝します。
LINE@登録者限定で無料チュートリアルプレゼント中!
DAINOTEは、プログラミングの基礎から応用までを網羅したプログラミング教材です。
初心者や非エンジニアの方でも、Twitter分析のWEBアプリ、LINE Bot開発、業務の自動化などをゼロから学習することができます。
- スクレイピング案件受託コース ~クラウドソーシング案件をやってみよう
- LINE Bot開発コース | 自動文字起こしができる「文字起こしくん」を作ろう
- Twitter分析Webアプリ「Top Tweets」を作ろう!
- 【業務自動化】はじめてのプログラミングで、毎日の業務を効率化してみよう!
上記のような多くのコースの中から自分にぴったりのコースをお選びいただけます。特に今回のスクレイピングの内容を実践したい方は、業務自動化コースがおすすめです。
LINE@に登録した方限定でチュートリアルが見れるようになっているので、ぜひ一度覗いてみてください!
関連記事:もっと学習したい方向け
【2020年最新】Pythonや機械学習を学べるプログラミングスクール厳選3つ
【2020年】プログラミングスクールで受講者がおすすめした厳選6社を一挙解説【体験談まとめ】