1)休息する場所
実際、今どこにいるのか(いつそこに集まったのか)、入国にビザが必要か、チケットの費用などを判断するために、多くの情報源を読み直す必要があります。
2)休息するとき
エジプトで休暇を過ごしたいが、いつわからないことを知っているとします。 多くの人にとって最も重要な質問は、いつそこに行く最も安い方法ですか? 天気がどのようなものかなどを知ることも重要です。
仕組み
読み込み中
多くのツアーオペレーターは、価格をダウンロードするためのいわゆるxml-gatewaysを持っています。 これらのゲートウェイを介して、特定の観光商品の価格を取得できます。 残念ながら、このデータにアクセスするには、ツアーオペレーターとの契約が必要になることがよくあります。 そのため、エクスポートのみが失敗します。 これを行うには、法人として登録し、多くの文書の署名に苦しむ必要がありました。
ツアーオペレーターが提供するデータは次のようになります。
<entry> <tour_date>18.11.2014</tour_date> <aircompany> ( / )</aircompany> <town> / Paphos</town> <room>STANDARD Inland View BB</room> <dt>18.11.2014</dt> <id_hotel>102610001680</id_hotel> <id_ns>104610415895</id_ns> <duration>1</duration> <o_duration>1</o_duration> <quota>9</quota> <id_price>121132934133</id_price> <price> <amount>435</amount> <RUR>25435</RUR> <ag>14+, 14+</ag> <id_vr>102510005340</id_vr> </price> </entry>
週に1回、組み込みのJavaスケジューラが情報収集プロセスを開始します。 1回のパスで、世界21か国の4,000を超えるホテルが表示されます。
データ収集は、100人以上のツアーオペレーターで実施されています。
データは、オンデマンドデータベースに慎重に保存されます。
新しいホテルも自動的に追加されます。 これにより、ホテルの名前またはその閉鎖を変更する問題が解決します。
また、多くの追加情報を自動的に収集します。
おおよそのデータベーススキーマは、多くのパラメーターを示しています。
現在、Apache Derbyデータベースには約2 GBのデータが含まれています。
休息の場所
ユーザーは、将来の旅行の基準のいくつかを知っているが、目的地を知らないという事実に基づいています。
価格に関する統計データに基づいて、補助データを使用します。つまり:
-日付と休日の簡単な説明。
-遠足、その価格、簡単な説明と種類(情報提供、極端、観光);
-特定の国へのビザの必要性、おおよその価格、生産時間、受け取り場所。
-飛行時間;
-ホテルでの食事。
サービスによって提供される21か国のそれぞれがどの程度適合するかの割合として計算できます。
すべてのパラメーターのバランスが取れているため、それほど巧妙ではない式を適用すると、興味深い結果を得ることができます。
休息するとき
この場合、ユーザーは自分が行きたい場所を知っており、価格と天気がどのように変化したかだけでなく、国の追加パラメーターも確認したいだけです。
この場合、いわゆる「カントリーカード」を表示するだけで、多くの有用な情報が反映されます。
創造の歴史
このアイデアは、私の大学の3年目(2010年末)に始まりました(SPbSPUのおかげです)。
私はどういうわけか休暇に行きたかったのですが、問題がありました-いつ安いのか、どこで休むのが暖かいのかは不明です。
さまざまな、時には矛盾する情報がフォーラムに投稿されていますが、実際の統計情報を含むデータサイトは見つかりませんでした。
IT分野で慣習的であるように、解決策が見つからない場合は、自分で作成してください。
最初のステップは手動データ収集でした。 Excelにはタブレットがあり、データに応じてグラフを作成する関数がいくつかありました。 しばらくすると、データを追加するのが面倒になりました(または単に忘れていました)。
2番目のステップは、C ++言語を学習することでした。 大学ではほぼ間もなく、C ++言語の学習を開始し、そのプロジェクトで簡単なプロジェクトを実行しました。 私はすぐにデータ収集プロセスを自動化することを望み、いくつかのツアーオペレーターからデータを収集するサービスを作成しました。 彼はデータをファイルに入れたので、データベースやWebサーバーに疑問はありませんでした。 このサービスは、自宅のコンピューターの王冠で開始されました。
3番目のステップは、EJB(Java EE)を学習しながらプロジェクトをJavaで完全に書き換え、リレーショナルDBMSとWebサーバーを追加してユーザーにデータを表示することです(表形式ビュー)。
将来、グラフ作成、パフォーマンスの向上、バグの修正などのために、さまざまなjsライブラリを追加しました。
自宅のコンピューターから「実際の」サーバーにサービスを転送した
過去の作品の1つから同僚にサイトデザインを注文しました。
なんでこんなこと?
実際、すべてがシンプルです-このプロジェクトは、独自に使用するためだけに開発されました。 最も安くて楽しい滞在のための情報が欲しかった。
それから、誰もが自分の役に立つ情報を見つけられるように、情報を全世界と共有したかったのです。
今、これは趣味であり、時々その開発に携わっています。 ホスティング、ドメイン、証明書、デザイン、時間(時は金なり)を除き、特別な投資はしません。
レイアウトにエラーがあるか、その他の小さな問題がある可能性があります。厳密に判断しないでください。
共有は大歓迎です
protury.info