##Google Apps Scriptとは?
以下の記事見ながら触ってみるとなんとなくわかります。
##正規表現を使えばスクレイピングできる
以下の記事見て、うおーっと思ったけどなんか違った。
できないのかなーと色々試してたらできた。
コード.gs
function myFunction() {
var response = UrlFetchApp.fetch("http://qiita.com");
var myRegexp = /<title>([\s\S]*?)<\/title>/i;
var match = myRegexp.exec(response.getContentText());
var title = match[1];
title = title.replace(/(^\s+)|(\s+$)/g, "");
Logger.log(title);
}
ログの出力
[13-09-10 00:00:49:130 JST] Qiita [キータ] - プログラマの技術情報共有サービス
- javascript - Google Apps Script Regex exec() returning null - Stack Overflow
- googleのtitleを取得するプログラム(正規表現) - Hexaの日記
- PHPでWEBページのタイトルを抜き出すサンプル [C!]
- 複数行にマッチさせる正規表現 | You Look Too Cool
- Javascript で trim するには - Enjoi Blog
##Googleの検索結果を出してみる
コード.gs
function myFunction() {
var response = UrlFetchApp.fetch("http://www.google.co.jp/search?q=qiita");
var myRegexp = /<h3 class=\"r\">([\s\S]*?)<\/h3>/gi;
var elems = response.getContentText().match(myRegexp);
for(var i in elems) {
var title = elems[i]
title = title.replace(/(^\s+)|(\s+$)/g, "");
title = title.replace(/<\/?[^>]+>/gi, "");
Logger.log(title);
}
}
ログの出力
[13-09-10 00:08:56:438 JST] Qiita [キータ] - プログラマの技術情報共有サービス
[13-09-10 00:08:56:439 JST] Qiita APIドキュメント
[13-09-10 00:08:56:439 JST] タグ一覧
[13-09-10 00:08:56:439 JST] The Official Qiita Blog
[13-09-10 00:08:56:439 JST] Qiita:Career
[13-09-10 00:08:56:440 JST] Qiitaについて
[13-09-10 00:08:56:440 JST] Qiita:Team
[13-09-10 00:08:56:440 JST] キータ (Qiita) on Twitter
[13-09-10 00:08:56:440 JST] Qiita(キータ) | Facebook
[13-09-10 00:08:56:441 JST] 「Qiita」とそのビジネスとは - SD Japan | (株)スタートアップ・デイティング
[13-09-10 00:08:56:441 JST] ニュースリリース: プログラマのための技術情報共有サイト「Qiita(キータ ...
[13-09-10 00:08:56:441 JST] Qiita 2-day Hackathon | PeaTiX
[13-09-10 00:08:56:442 JST] Qiita AWS Tools Hackathon | PeaTiX
- ダブルクォーテーションのreplaceの方法 - JavaScript - 教えて!goo
- 片鱗懐古のブログ: Rhinoのフィルタ演算は正規表現じゃなくても良かった
- HTMLタグを除去 - Tatsuya Wiki
- [JavaScript]String.matchとRegExp.execと後方参照 - chalcedonyの外部記憶装置・出張版
##感想
これで定期的にサイトをチェックして特定のキーワードがあったらメールするとかのプログラムが簡単に書けそう。