DMMスクレイピング × WordPress
WordPressのインストールを完了させる
WordPressのインストールを通常通り完了させて下さい。ここではまだ特別なことは一切ありません。
ドメインの直下でもhttp://example.com/blog でもどこでも好きなところにインストールを完了させて下さい。
WordPressのデータベース構造を確認しよう
WordPressのデータベースの構造を確認しましょう。Wordpressのテーマや管理画面しか触ったことの無い人にはやや敷居が高いかもしれませんが、一緒に見ていきましょう。
また、今回の勉強会では事前にWordpressのデータベース構造を理解と少しだけ変更する必要がありました。
phpMyadminからデータベースの構造を確認する
WordPressを使っていると、Mysqlというデータベースが必要ということは理解されていると思います。
そこでWordpressがインストールされているデータベースの構造をMysqlのWEB管理ツールであるphpmyadminから確認してみます。
(phpMyadminのURLがわからない場合、利用しているサーバーの管理者に質問してください。)
phpMyadminのログインページ
このログインID、パスとは、Wordpressを始めてインストールしたあの時に入力したものと全く一緒です。
データベースの一覧から今回のWordpressのデータベースを選ぶ
phpMyadminにログインすると、現在管理しているデータベースの一覧が表示されますので、今回のスクレイピングに利用するデータベースを選択します。
WordPressのテーブル一覧を確認する
ここでやっとWordpressのテーブル一覧を確認することが出来ます。
テーブルとは、エクセルで言う、シートのようなものだと考えてください。
頭に『wp_』と付いているものがテーブルです。
最初のインストール時に接頭辞を変更した人や、簡単インストールを利用した人はこの接頭辞が違うかもしれません。
WordPressのデータベース構造説明動画
携帯で撮影したので見にくくて申し訳ないのですが、今回のスクレイピングで使うデータベーステーブルの構造部分だけを一旦動画かしました。
WordPressのwp_postsテーブルにユニークフィールドを追加する
スクレイピング自体はHTMLが分かれば誰でも出来ます。問題は何度かスクレイピングしていくなかで一度データベースに登録が完了したものを重複で登録させないことです。
Wordpressに重複登録を防ぐため、記事データを管理する『wp_posts』テーブル構造を少し改造してあげる必要があります。
wp_postsテーブルにvalフィールド追加
wp-postsテーブルにはDMMの作品情報が入るわけですが、何度スクレイピング実行しても重複しないための、作品のID番号を管理するためのvalフィールドを作ってあげます。
SQLのタブを選択し、以下のSQLを実行します。
ユニークフィールドの追加
次に追加したフィールドをユニークキーにしてあげます。以下のSQLを再び実行して下さい。
val
);
実行後、wp_postsテーブルを選択した状態で、『構造』のタブをクリックして、ページの下の方、『インデックスキー』の欄を確認します。
画像のように『val』というインデックスキーが追加されていたら、スクレイピングを利用するにあたってのテーブル構造の変更は完了です。
いよいよPHPから実行していきます。