Pracuję w branży turystycznej jako architekt oprogramowania / kierownik projektu przy dokładnie takim projekcie, jaki opisujesz - w naszym regionie współpracujemy bezpośrednio z dostawcami, ale w przypadku wyjazdów łączymy się z kilkoma agregatorami.
Odpowiadając na twoje pytanie ... niektóre dane, które posiadasz, niektóre zdobywasz na różne sposoby, a niektóre musisz torturować i przekręcać, aż się przyzna.
Jaki jest twój kąt?
Pytania, które musisz sobie zadać, to ... Chcesz sprzedawać reklamy, takie jak Kajak, czy wolisz obniżać ceny jak Expedia? Interesujesz się wyszukiwaniem lub sprzedażą usług turystycznych? Czy celujesz w niszę (na przykład tylko podróże lotnicze) czy wszystko (zakwaterowanie, linie lotnicze, wynajem samochodów, dodatkowe usługi, takie jak transport / zwiedzanie / konferencje itp.)? Czy kierujesz reklamy na region (Stany Zjednoczone lub część Stanów Zjednoczonych) czy na cały świat? Jak głęboko się posuwasz - czy po prostu wyświetlasz kilka witryn na jednym ekranie, czy też łączysz razem różne usługi i pakujesz je dynamicznie?
Pobieranie danych
Jeśli wybierasz model biznesowy Kayak, z technicznego punktu widzenia nie potrzebujesz pozwolenia witryny ... ale wiele witryn ma programy stowarzyszone z ramkami IFrame lub innymi prostymi sposobami kierowania klienta do ich witryny. Z drugiej strony nie musisz zajmować się płatnościami / reklamacjami i samymi podróżnymi. Jeśli chodzi o wady ... jeśli chcesz samodzielnie porównać ceny i przedstawić użytkownikowi najtańszą opcję, będziesz musiał zintegrować się na głębszym poziomie, a to oznacza interfejsy API i skrobanie sieci.
Jeśli chodzi o skrobanie sieci ... unikaj tego. To jest do bani. Naprawdę. Po prostu tego nie rób. Zaufaj mi ten raz. Na przykład niektóre rzeczy, takie jak lowcosters, których nie można uzyskać bez skrobania sieci. Tanie linie lotnicze żyją z usług dodanych. Jeśli użytkownik nie widzi swojej witryny, nie sprzedaje dodatkowych rzeczy i nic nie zarabia. Dlatego nie mają partnerów, nie oferują interfejsów API i prawie nieustannie zmieniają układ swojej witryny. Są jednak firmy, które zarabiają na życie, przeglądając strony internetowe lowcoster i pakując je w ładne interfejsy API. Jeśli możesz sobie na to pozwolić, możesz dać użytkownikom porównanie kosztów tanich lotów, a to jest ogromne.
Z drugiej strony istnieją „normalni” przewoźnicy, którzy oferują API. Nie jest to duży problem, aby dostać się do linii lotniczych, ponieważ wszystkie są zjednoczone w ramach IATA ; zasadniczo kupujesz od IATA, a IATA rozprowadza pieniądze wśród przewoźników. Jednak prawdopodobnie nie chcesz łączyć się bezpośrednio z siecią operatora. W dzisiejszych czasach mają usługi sieciowe i SOAP, ale wierz mi, kiedy powiem, że istnieją protokoły SOAP, które są po prostu szalenie cienkimi opakowaniami wokół monitu tekstowego, przez który można wchodzić w interakcję z komputerem mainframe z protokołem w stylu lat 80-tych (pomyśl o Uniksie pytaj, gdzie naliczana jest opłata za polecenie; a wykonanie jednego wyszukiwania zajmuje około 20 poleceń). Dlatego prawdopodobnie chcesz połączyć się z kimś znajdującym się nieco dalej w łańcuchu pokarmowym, z lepszym API.
Linie lotnicze znajdują się zatem na obu krańcach krzywej Gaussa; z jednej strony są indywidualni dostawcy, az drugiej wysoce scentralizowane systemy, w których wdrażasz jeden interfejs API i możesz latać w dowolne miejsce na świecie. Zakwaterowanie i pozostałe produkty turystyczne znajdują się pomiędzy. Jest kilku dużych graczy, którzy agregują hotele i mnóstwo małych dostawców z wieloma agregatorami, które obejmują tylko część spektrum. Na przykład możesz wynająć latarnię morską i nawet nie jest ona droga - ale nie będziesz w stanie porównać cen różnych latarni w jednym miejscu.
Jeśli interesujesz się modelem biznesowym Kayak, prawdopodobnie skończysz na skrobaniu stron internetowych. Jeśli chcesz integrować różnych dostawców, często będziesz pracować z interfejsami API, z których niektóre są całkiem dobre, a większość z nich można tolerować. Nie pracowałem z RSS, ale nie ma dużej różnicy między RSS a skrobaniem sieci. Jest też czwarta opcja, o której nie ma mowy w odpowiedzi Jeffa ... ta, w której co noc pobierasz dane, na przykład pliki .CSV przez FTP i tym podobne.
Życie jest do bani (mini-rant)
A potem jest złożoność. Im większą wartość chcesz dodać, tym większą złożoność będziesz musiał sobie poradzić. Czy możesz szukać zakwaterowania, w którym akceptowane są zwierzęta? Dla hostelu położonego mniej niż 5 km od centrum miasta? Czy łączysz loty i czy jesteś w stanie zagwarantować, że podróżny będzie miał wystarczająco dużo czasu, aby dostać się z jednego lotniska na drugie ... czy możesz sprzedać transport z wyprzedzeniem? Słynny wiolonczelista nie chce rozstać się ze swoją cenną XVIII-wieczną wiolonczelą; czy możesz sprzedać mu inne miejsce na wiolonczelę (tak, nie wymyślając tego)?
Chcesz porównać ceny? Jasne, pokój kosztuje 30 EUR za noc. Ale możesz dostać jedno podwójne za 30 i jedno pojedyncze za 20, lub możesz dostać jedno dodatkowe łóżko w podwójnym i otrzymać 70% zniżki dla trzeciej osoby. Ale tylko jeśli jest to dziecko w wieku poniżej 12 lat; nasze dodatkowe łóżka nie są przeznaczone dla osób dorosłych. A ceny za dodatkowe łóżko nie znajdziesz w wynikach wyszukiwania - tylko wtedy, gdy obliczysz ostateczną cenę.
I nawet nie zaczynaj od dynamicznego pakowania. Chcesz sprzedać zakwaterowanie + wynajem samochodu? Nie ma problemu; zintegruj się z dwoma różnymi dostawcami i gotowe ... ręcznie aktualizuj listę lokalizacji w mieście (od wypożyczalni samochodów) do hoteli (od dostawcy, który podaje tylko miasto dla każdego hotelu). Oczywiście pod warunkiem, że już dopasowałeś listę miast z tych dwóch, ponieważ nie ma międzynarodowego standardu kodów miast.
W przeciwieństwie do wielu innych branż, które mają wiele produktów, branża turystyczna ma wiele bardzo złożonych produktów. Amazon ma to łatwe; sprzedaż książek i sprzedaż ziemniaków to to samo; możesz nawet wysłać je w tym samym pudełku. Łatwo się łączą i nie składają się z wielu części. :)
PS Odnośnik do ciekawego, niedawnego wątku w Hacker News, zawierający informacje poufne dotyczące lotów . PPS Niedawno natknąłem się na świetny, choć raczej stary post na blogu na temat protokołu NDC IATA, zawierający przegląd powiązań branży turystycznej i lekcję historii, jak to się stało .