htmlSQLでモバイルSEOを簡単にシステムツール化して管理する

By fukumoto - 09/01/30 - このエントリをはてなブックマークに追加このエントリをYahoo!ブックマークに追加このエントリをdel.icio.usに追加このエントリをFC2ブックマークに追加

今日はモバイルSEOに絶大な効果を発揮するであろう便利なPHPライブラリをご紹介します。
※絶大な効果かどうかは使い方や個人によって差がありますのでご理解下さい。
 

僕には絶大です。この作業量でこんなにもめんどくさいことができますから。
そのライブラリとは、
 

htmlSQL
 

サイト上や、ファイル上のhtmlタグを一瞬で取ってきてくれます。
しかも普通にとってくるだけではなく、SQLのように取ってくることができます。
さらに使い方はとにかく簡単!
ダウンロードしてきたファイルをFTPでサーバーにアップするだけ。
それでincludeとかrequireで読み込んであげると、もう使えます。
さらにさらにPHPが分からない人でも、
デモスクリプト付なのでそれをコピペすれば分からなくても使えます。
 

じゃあ早速使ってみましょうか
 

まずはコチラから”htmlsql-v***.zip”をダウンロードして下さい。
ダウンロードするファイル形式は環境に合ったものをダウンロードして下さいね。
次に、ダウンロードしたものを解凍すると、
“htmlsql.class.php”と”snoopy.class.php”が入っていますので、
その2つのファイルをPHPから呼び出せるところにアップします。
 

これだけで準備は完了
 

実際にテストするために、htmlを書いてサーバーにアップしてみました。
 
ファイル名:test.html

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>htmlSQLテスト</title>
</head>
<body>

<a href="/" accesskey="1">テストリンク</a>

</body>
</html>

 
何の変哲もない、ただ新規を押して出てきたものに<a>タグを付けたものです。
これをPHPからhtmlSQLを使って<a>タグ情報を取得しましょう。
解凍してできたexampleフォルダに入っている、デモスクリプトを使うと楽です。
 

 // 読み込む
include_once("../snoopy.class.php");
include_once("../htmlsql.class.php");

 // インスタンス化
$htsql = new htmlsql();

 /**
* 取得したいhtmlを指定します。
* urlから取得したければurlと書き、
* ファイルから取得したければfileと書く
*/
if (!$htsql->connect('url', 'http://****.jp/test.html')){
print 'Error while connecting: ' . $htsql->error;
exit;
}

 // SQLを書く
if (!$htsql->query('SELECT * FROM a ')){
print "エラー!取得できません!" . $htsql->error;
exit;
}

 // 結果
foreach($htsql->fetch_array() as $row){
var_dump($row);
} 

 
中身を見てみると、
 

array(4) { ["href"]=>  string(1) "/" ["accesskey"]=>  string(1) "1" ["tagname"]=>  string(1) "a" ["text"]=>  string(12) "テストリンク" } 

 
こんな感じですかね。
どうですか?すごく簡単じゃないですか?
なんせ9割コピペで使える丁寧なライブラリですから。
 
ではSEOでどのように使えるかというと、
一度このライブラリを利用して簡単なツールを作ってしまえば、
今後はわざわざサイトとかファイルを見なくてもURLを指定するだけで、
ページの要素はこれですべて理解できるようにシステム化できますよね。
SEOでは<title>とか<h>とか<a>タグ等の構成要素が重要なので、
ページごとの情報をこのようにSEOにピッタリな形で管理できるのはすごい便利なことです。
 

さらにやってることは、スクレイピングと同じなので、
使い方によってはもっと色んなことができます。
SEOで言うと結構重要なアレなんかもこれを使えば簡単にできますね。
具体的には書けないですが、色んな使い方を考えて使ってみて下さい。