📜 ⬆️ ⬇️

3bileta.ru - ticket prices aggregator

Hello! I want to introduce you to a new project 3bilete.ru .

3bileta.ru is an aggregator of prices for tickets to the theater, to concerts and sporting events. Currently, information on availability and prices is collected from the sites of the three largest ticketing agencies. While in the event database only for the city of Moscow .

In order to understand which service is offered by 3 ticket , it is enough to look at the list of tickets for any of the events. For example, here . In general, I will not explain how to use the site, but I will tell you about some technical features. That is, I will answer the question how it works.

Event Information

The first task that had to be solved in order to create a service was to fill in the event database . More precisely, it was more important to create a system with which the filling of information would be as automated as possible. I must say that this problem is solved very well. The update of information about events takes only a couple of people / hours per week .
')
How it's done? First of all, information about future events is automatically downloaded from public sources: poster sites, ticketing agencies. Further, the new data, for example, the new date of the performance, fall into the so-called tasks for the editor. Task processing - binding to an existing event, validation check. In most cases, the entire task execution procedure is a few clicks. Tasks containing new events, and not just new dates, are more difficult, but also performed quickly.

In the same way the database of establishments is updated. But everything is simpler - institutions are updated or appear infrequently.

Loading data on availability and pricing

Here, the procedure is fairly standard for any aggregator, such as Yandex.Market . An XML file of a special format is sent to the input of the loader. An important detail in this case is the way to determine that the information relates to a very specific event. The problem is that different sources can create XML files with different event names and other fields.

The solution to this problem is as follows:
  1. As information identifying the event, a date / time bundle and the institution are used . That is, it is assumed that different events cannot start at the same time at the same time.
  2. Unfortunately, the names of institutions may also differ from different sources. This is solved by manually linking the source institutions to the institutions in the 3bilet.ru service database . There are few institutions, so this is done quickly and once.
Robots

What if the provider of availability and pricing does not provide XML in the correct format? For this case, there is a separate robot program that scans the pages of the source site and as a result of its work produces XML of the desired format. This method is currently used for all sources.

What's next?

There are several areas in which the project will develop:
  1. Exchange tickets . That is, the secondary market of tickets : the ability to sell tickets to other users of the service . I must admit that it was an initial idea. In general, in many ways the site is similar to its American counterpart stubhub.com . Now this is, first of all, the resemblance :) Unfortunately, I am a poor designer, so borrowing design solutions at this stage of the project was quite logical. Although many probably will condemn me for it. I do not like it when someone borrows something from someone to put it mildly.
  2. Statistical information . The service is already able to generate very useful statistical reports. If you develop this topic, it will be possible, for example, to build price dynamics charts and tops of the best-selling tickets.
  3. Sale of electronic tickets . In this area there are many innovative ideas. When I come closer to their implementation I will definitely describe them in detail.
Follow the news of the project on Twitter .

Conclusion

Thank you for reading this place. Please, write in comments, express your opinion. More criticism, more criticism!

UPD. I see the minuses, the critics - no. For what? :)

Source: https://habr.com/ru/post/79085/


All Articles