どうもー!
5月なのに暑いですね、そして梅雨こないですねー
宮崎にも来る気配なしです。
今日も音楽フェスに行くのですが、
皆さん、チケットを取る際にどのチケット販売サービスを使っていますか?
どういう基準で選んでますか?
ポイントだったり会員ランクなどてしょうか。
入手困難なバンドなんかだと、
私の経験でよくあるのがA,Bというサービスではsold outにもかかわらず、
Cでは残りわずかで残っていたりするのです。
ありがたく即購入するんですが、
この事実に辿りつくまで、
サービスAで検索→sold outを確認
→サービスBで検索→sold outを確認
→サービスCで検索→残りわずかを確認
→嬉し恥ずかし焦る気持ちを抑える
→無事ゲット!!!(ゴール)
ゴールに行くまで3サイトも順番に回るのです。
順番や早さによっては、
先に早く見ておけば取れたかもしれないチケットを
失ってしまうのです。
そんな自分の経験から、複数サービス
(現在チケットぴあ、eplus、ローチケ)を
一括検索できるライブラリを作りました!
スクレイピングを使ってるので、
リニューアルとかされると困りますw
Github→kin29/ticket-hunter
Packagistにも登録済みですので、
$ composer require kin29/ticket-hunter
からも取得可能でございます。
今回、Packagistへの登録を初めてしました!
こちらを参考にさせてもらいました。
https://qiita.com/niikunihiro/items/fbd696e506e734782d8f
6. GithubのサービスフックにPackagistを登録する
は、自動になったのか勝手に登録された気がしました。
使い方は、簡単です!
- 使いたい販売サービス名(TicketPia/Eplus/LawsonTicketのどれか、複数指定可)
- キーワード(「雨のパレード」など)
を渡すだけです。
<?php try { $ticketVendors = new Kin29\TicketHunter\TicketHunter(['TicketPia', 'Eplus', 'LawsonTicket'], '雨のパレード'); $ticketVendors->echoJson($ticketVendors->getList()); } catch (\Exception $e) { die($e->getMessage()); }
出力結果はこんな感じです。
{ "TicketPia": [ { "title": "GRAPEVINE/雨のパレード〔愛知〕", "date_time": "2019/8/2(金)", "pref_id": "23", "pref_name": "愛知県", "stage": "名古屋クラブクアトロ", "sale_method": "先行抽選", "sale_status": "近日抽選受付2019/6/8(土) 10:00 ~ 2019/6/10(月) 18:00", "link": "http://ticket.pia.jp/pia/ticketInformation.do?eventCd=1922500&rlsCd=&lotRlsCd=27947" }, ... ], "Eplus": [ {...省略...}, ], "LawsonTicket": [ {...省略...}, ] }
販売前の場合、販売開始日を取得できるといいな
と今気づきました、issueに入れておこう!
日付のフォーマットも入れてないな、、、入れよう。
アウトプットしてると気づくことて多いですよね、大切。
このライブラリを作っていた矢先、先を越されたかのように、
Freaxがリリースれました、、便利ですね。
【見逃さない】「ライブのチケット申し込み忘れた…」を防止するアプリ「Freax」配信開始
お気に入りのアーティストが出演するライブやフェスを見つけ、チケットの発売開始時と締め切り前にプッシュ通知を受け取れる。 pic.twitter.com/2fVUCkQYxi
— ライブドアニュース (@livedoornews) May 13, 2019
内容が被っていますが、ライブラリはなさそうなので作り続けました^^;
今後は、このライブラリを使ってAPIを作りたいなとおもっています。
BearSundayでまた作りたいなあと思っております。
さらに、検索フォームをSymfonyで作ろうかと思っています。
怠けないように宣言しておきます!
では、森道市場2019行ってきます!
はじめまして。
複数のチケットサービスを一括で検索できるなのないかなあ?と探していたところ、ここにたどり着きました。
早速使ってみたのですが、ぴあ以外が取得できませんでした。
e+に関してはスクレイピングが上手くいってないのかなあ?という感じでデータ自体は持ってこれているようですがローチケに関してはそもそも接続自体ができてない感じです。
サーバ(PHP)側の設定等、ほかにも必要なものがあるのでしょうか?
はじめまして。コメントありがとうございます。
ローチケ正しく取得できないこと確認しました、ありがとうございます。
今後修正します。
e+は動いている認識なのですが、よろしければエラー文言などの詳細いただけないでしょうか?
git clone後に、composer installで完了です。
php example.phpで動作確認することができます。