【PHP】WEBスクレイピングして求人情報の一覧を表示させてみる


0. はじめに

求人情報をチェックするのって疲れますよね。
「もっと楽をして職探しをしたいなぁ」
ということで求人ページをWEBスクレイピングして、簡単に求人情報をチェックできるようにするページを作ってみました。

1. 用意するもの

・PHPが動くサーバー環境
・goutte.phar

2. PHPコードを書く

今回はワークポートの
プログラマー/PG(WEB・オープン・モバイル系)・求人情報一覧
をWEBスクレイピングして会社名・職種名を一覧表示させてみます。

workport.php
<?php
require_once 'goutte.phar';
use Goutte\Client;

// Goutteオブジェクトの生成
$client = new Client();

// WEBページを取得
$crawler = $client->request('GET',
        'http://www.workport.co.jp/all/search/job-3051600/');

$text_ary = array();
$link_ary = array();

// 1行ずつ取得する
$dom = $crawler->filter('h2.ttl');
$dom->filter('a')->each(function ($node) use (&$text_ary) {
        $text_ary[] = $node->text();
        });
$dom->filter('a')->each(function ($node) use (&$link_ary) {
        $link_ary[] = 'http://www.workport.co.jp'. $node->attr('href');
        });

// 求人情報を表示する
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">';
for ($i=0; $i<count($text_ary); $i++){
    $text = $text_ary[$i];
    $link = $link_ary[$i];
    echo "<a href=". $link. ' target="_blank">'. $i. ".  ". $text. "><br><br>";
}
?>

上記の workport.php をサーバー上に置けば準備完了。あとはブラウザで開くだけです。

3. 結果

workport.php をブラウザで開くと以下のように求人情報の一覧表示が出ます。(完)

VivaldiのWEBパネルとして表示させるようにすればいつでも気軽に求人情報がチェックできて便利です。

参考URL

Webスクレイピングを行う(Goutte)
http://www.buildinsider.net/web/bookphplib100/088