ITpro EXPO 2013
ひょんなことからITpro EXPO 2013に参加できそうな気配。
が、なんかサイトが見辛いので、自分用に情報を抽出してみる。
出展企業がわかりにくい。
時間的制約からセミナーに参加するのがムツカシイので、ブースを攻めることを画策。
- 出展社一覧
- フロアマップ
- 同時開催
- ITpro EXPO 2013
- Cloud Days Tokyo 2013
- ビッグデータ EXPO 2013
- スマートフォン&タブレット2013
- Security 2013
- モバイル&ソーシャルEXPO2013
全部興味あるけど、どこに何があって何をやっているのか、フラットに並べたいけど一覧される画面が(ぱっと見て)見当たらない。出展社一覧が小間番号順にソートできればフロアマップと照らし合わせやすいんでね〜かな、と思い立ったが吉日。
https://exponet.nikkeibp.co.jp/itev2013/exhibitor/company_index.html を見たら、出展社情報は json ファイルを読み込んでいるらしいのでとりあえず手当たり次第 GET。
curl でダウンロード
$ curl -f -k https://exponet.nikkeibp.co.jp/itev2013/exhibitor/itev/list/ja/company/[1-500].json -o "#1.json"
欠番があるらしく 、1〜500まで回して 262件という結果になりました。
262件のjsonファイルをマージしてリストを作れば良いんじゃね?ということでなんか良い方法ないかなー。
スマートな方法が思いつかないので jsonデータから必要項目を抜く ajax を作ってみた。
index.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <head> <meta http-equiv=Content-Type content="text/html; charset=utf-8"> <title>一覧</title> <script type="text/javascript" src="jquery-2.0.2.min.js"></script> <script type="text/javascript" src="jsrender.js"></script> <script type="text/javascript"> var docurl = './json/'; $(function () { $('#tbl').append('<table border="1" cellspacing="1" cellpadding="1">'); for ( var x =0; x < 500; ++x ) { getData(x); } $('#tbl').append('</table>'); } ); function getData(id) { $.ajax ( { dataType: 'jsonp', jsonpCallback: 'callback', url: docurl + id + '.json', async: false, success: function (json) { $('#tbl').append( $('#tpl').render(json) ); } } ); } </script> <script id="tpl" type="text/x-jsrender"> <tr> <td>{{:ID}}</td> <td>{{:booth_number}}</td> <td>{{:exhibit}}</td> <td> {{if url}}<a href="{{:url}}">{{/if}} {{:contact_name_ja}} {{if url}}</a>{{/if}} </td> <td> <b>{{:catch}}</b><p>{{:summary}}</p> </td> <td> {{for service}} <b>【{{:title}}】</b><p>{{:summary}}</p> {{/for}} </td> </tr> </script> </head> <body> <div id="tbl"></div> </body> </html>
ブラウザ上に一覧したけど、ソートとか加工できないと意味ないな…