PHPを使った初歩的な情報収集(Web spider)
ご挨拶
おはようございます。今日からQiitaを始めました、CHENです。Qiitaにどんな記事を書くのはまだ決めっていないですが、とにかく手を動かしながら、考えます。
Web Spiderについて
概念
Web Spiderとはプログラミングされた自動情報収集のプログラムと認識して頂くと良いと思います。サーチエンジンのベースとなるスキルとも言えます。
原理
Web Spiderは、プログラムからサーバーに請求を送って、サーバーから情報貰い、その情報をクリーニングした後、欲しい情報だけを、自分のDBやパソコンに保存するプロセスです。
ツール
Java、Python、PHPなど、Web Spiderができる言語は非常に多いです。言語の間では、大きな違いはあまりないと考えます。
ただし、Web Spiderを使って、収集した情報をリアルタイムで自分のサイトに載せる場合に限って、PHPは使いやすい(手間がかからない)点があります。その理由は、PHPがWEB開発に親和性が高いという点からです。
今日のゴール
今日は簡単にPHPを使って、ある就活サイトの情報をまとめて収集します。
下準備
必要なモノは、PHPの開発環境:
方法その一:
具体的なインストールやテストは他のサイトに参考してください。
方法その二:
XAMPP
こちらは手間がかからなく、特にWindowsの場合、ファイルのアクセス権限などの設定も回避ができます。
ーーーーーーーーーーーーーーーー
最後に、Web Spiderで使われるPHPパッケージをダウンロード
simple_html_dom.php
XAMPPを起動します
MACの場合
①インストールされたXAMPPを起動します
②STARTをクリックして、APACHEを起動させます
③Networkをクリック
④localhost:8080->80をクリックして、Enableさます
⑤任意のブラウザを開き、以下のサイトを訪問します
XAMPPの表示が出たらOKです
⑥XAMPPのVolumesをクリックし、そしてMountをクリック、最後にExploreをクリック
⑦ここでFinderの画面が出て、そしてhtdocsというフォルダを開きます
⑧先にダウンロードされたsimple_html_dom.phpをhtdocsにコピー
これで前準備は終了、次はコーディングに移ります
Windowsの場合、操作が少し異なるが、XAMPPを稼働させ、最後にXAMPPがインストールされたフォルダにhtdocsを見つけて、同じようにsimple_html_dom.phpをhtdocsにコピーすればOK
コーディング
①まず、先開いたhtdocsフォルダに任意な名前のphpファイルを生成させる、ここでは、Recruit.phpとします(任意なTEXT編集ソフトを使って)
<?php
require_once 'simple_html_dom.php';
//外部のsimple_html_dom.phpライブラリを使うことを声明
//ターゲットのサイトアドレスを設定、今回は○ヨタとする
$address = "https://en-hyouban.com/company/00002695955/1/?pagenum=";
//最大13ページの口コミ情報がある、ここではHTML解析の知識が必要
$maxpage = 13;
//すべてのページを巡る
for($x=1;$x<=$maxpage;$x++){
//標的アドレスのページ目を指定
$goal_add = $address.$x;
//標的アドレスのサーバーに情報請求
$html = file_get_html($goal_add);
//コメントが欲しい場合、コメントクラスを指定(HTML解析による)
$page = $html->find('div.comment');
foreach($page as $comment){
echo $comment;
}
}
?>
②以上のような内容を入力し、保存する
③ブラウザに以下のアドレスを入力する
http://localhost:8080/Recruit.php
④しばらくプログラムを動かせ、結果はこうなる:
まとめ
いかがでしたか?今回はPHP開発環境の下準備及び、簡単なデータ収集プログラムの作成、及びプログラムのテストを行いました。
収集されたデータは、ブラウザにアウトプットではなく、ファイルに書き込みこともできます。
テキストファイルの他に、画像や動画まで収集可能です!
また、詳しいデータのクリーニング方法は、simple_html_dom.phpに参照してください。
Author And Source
この問題について(PHPを使った初歩的な情報収集(Web spider)), 我々は、より多くの情報をここで見つけました https://qiita.com/Buddychen/items/7d4c39d3c94761659569著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .