クローラーやスクレイピングを行う際にHTMLを解析する機会は多いと思いますが、そんな時にサイト全体が必要ではなくごく一部だけで十分というケースもあります。 例えばあなたがメタ情報だけ欲しいならばMaaSを使ってみましょう。Meta-as-a-Serviceの略語で指定したURLのメタ情報をJSONで取得できます。

こちらがMaaSのサイト。URLが表示されていますので試してみましょう。

例えば http://maas.dfth.in/meta/campushash.com というURLを実行した場合、次のような返却値になります。

{
  "data": [
    {
      "name": "charset", 
      "value": "UTF-8"
    }, 
    {
      "name": "description", 
      "value": "CampusHash provides workshops on the state-of-the-art technologies of the Web, like HTML5, CSS3, Google App Engine, Python and mobile application development with Apache Cordova."
    }, 
    {
      "name": "tags", 
      "value": "workshops, india, google app engine, python, html5, css3, javascript, jquery, twitter bootstrap, apache cordova, sencha touch"
    }, 
    {
      "name": "author", 
      "value": "Design From The Heart"
    }, 
    {
      "name": "viewport", 
      "value": "width=device-width, initial-scale=1.0"
    }, 
    {
      "name": "apple-mobile-web-app-capable", 
      "value": "yes"
    },
	:
  ]
}

なおJSONPはサポートされていないようですが、MaaSを自分のサーバ内に立てればJSONでとれますし、カスタマイズしてJSONP対応させても良いでしょう。

さらに http://maas.dfth.in/meta/description/campushash.com のようにメタタグのnameを指定すると次のような返ってきます。

{
  "data": {
    "name": "description", 
    "value": "CampusHash provides workshops on the state-of-the-art technologies of the Web, like HTML5, CSS3, Google App Engine, Python and mobile application development with Apache Cordova."
  }, 
  "status": "OK"
}

メタデータのチェックをしたいと思った時に使えそうです。必要な内容が適切に入っているかどうか、システムで自動チェックしたりする際にも活躍しそうです。

MaaSはPython製、MIT Licenseのオープンソース・ソフトウェアです。

MaaS - Meta-as-a-Service | @sanketsaurav sanketsaurav/maas