Я работаю в туристической индустрии в качестве архитектора программного обеспечения / руководителя проекта именно того проекта, который вы описываете - в нашем регионе мы работаем с поставщиками напрямую, но для исходящей связи мы подключаемся к нескольким агрегаторам.
Чтобы ответить на ваш вопрос ... некоторые данные у вас есть, некоторые вы получаете разными способами, а некоторые вам нужно мучить и крутить, пока он не признается.
Какой у тебя угол?
Вам нужно задать следующие вопросы ... Хотите ли вы продавать рекламу, как Kayak, или вам нравится Expedia? Вы занимаетесь поиском или продажей туристических услуг? Вы ориентируетесь на нишу (например, только авиаперелеты) или все (проживание, авиалинии, аренда автомобилей, дополнительные услуги, такие как транспорт / экскурсии / конференции и т. Д.)? Вы нацеливаетесь на регион (США или часть США) или мир? Насколько глубоко вы заходите - вы просто показываете несколько сайтов на одном экране или вы объединяете разные службы вместе и динамически их упаковываете?
Получение данных
Если вы придерживаетесь бизнес-модели Kayak, вам технически не нужно разрешение сайта ... но у многих сайтов есть партнерские программы с IFrames или другими простыми способами направить клиента на свой сайт. С другой стороны, вам не нужно иметь дело с платежами / жалобами и самими путешественниками. Что касается минусов ... если вы хотите самостоятельно сравнить цены и представить пользователю самый дешевый вариант, вам придется интегрировать на более глубоком уровне, а это означает API и веб-скрейпинг.
Что касается парсинга веб-страниц ... избегайте этого. Это отстой. В самом деле. Просто не делай этого. Поверьте мне в этом. Например, некоторые вещи, такие как лоукостеры, невозможно получить без веб-скрейпинга. Бюджетные авиакомпании живут за счет дополнительных услуг. Если пользователь не видит свой веб-сайт, он не продает лишних вещей и ничего не зарабатывает. Поэтому у них нет филиалов, они не предлагают API и почти постоянно меняют макет своего сайта. Однако есть компании, которые зарабатывают на жизнь тем, что очищают сайты лоукостеров и упаковывают их в красивые API. Если вы можете себе это позволить, вы можете сравнить цены на недорогие авиабилеты для своих пользователей, и это огромная сумма.
С другой стороны, есть «нормальные» операторы, предлагающие API. Попасть в авиакомпании не такая уж большая проблема, поскольку все они объединены IATA. ; в основном вы покупаете у IATA, а IATA распределяет деньги между операторами. Однако вы, вероятно, не захотите напрямую подключаться к сети оператора связи. В наши дни у них есть веб-службы и SOAP, но поверьте мне, когда я говорю, что существуют протоколы SOAP, которые представляют собой просто безумно тонкие оболочки вокруг текстовой подсказки, с помощью которой вы можете взаимодействовать с мэйнфреймом с протоколом в стиле 80es (подумайте о Unix подсказка, где вам выставляется счет за команду; и для выполнения одного поиска требуется около 20 команд). Вот почему вы, вероятно, захотите связаться с кем-то немного более низким по пищевой цепочке с лучшим API.
Таким образом, авиакомпании находятся на обоих концах кривой Гаусса; с одной стороны, это отдельные поставщики, а с другой - высокоцентрализованные системы, в которых вы реализуете один API и можете летать в любую точку мира. Размещение и остальные туристические продукты находятся посередине. Есть несколько крупных игроков, которые объединяют отели, и тонна мелких поставщиков с множеством агрегаторов, которые покрывают только часть спектра. Например, вы можете арендовать маяк, и это даже не так дорого - но вы не сможете сравнить цены на разные маяки в одном месте.
Если вы занимаетесь бизнес-моделью Kayak, вы, вероятно, в конечном итоге будете сканировать веб-сайты. Если вы собираетесь интегрировать разных поставщиков, вы часто будете работать с API, некоторые из которых довольно хороши, а большинство приемлемо. Я не работал с RSS, но нет большой разницы между RSS и веб-скрапингом. Существует также четвертый вариант, не упомянутый в ответе Джеффа ... тот, где вы получаете свои данные каждую ночь, например, файлы .CSV через FTP и тому подобное.
Жизнь отстой (мини-разглагольствование)
А еще есть сложности. Чем больше ценности вы хотите добавить, тем с большей сложностью вам придется справиться. Можете ли вы найти жилье, в котором разрешено проживание с домашними животными? Для хостела, расположенного менее чем в 5 км от центра города? Совмещаете ли вы рейсы и можете ли вы гарантировать, что у путешественника будет достаточно времени, чтобы добраться из одного аэропорта в другой ... можете ли вы продать транспорт заранее? Знаменитый виолончелист не хочет расставаться со своей драгоценной виолончелью 18 века; Вы можете продать ему другое место для виолончели (да, не придумывать это)?
Хотите сравнить цены? Конечно, номер стоит 30 евро за ночь. Но вы можете получить одну двуспальную за 30 и одну односпальную за 20, или вы можете получить одну дополнительную кровать в двухместном номере и получить скидку 70% для третьего человека. Но только если это ребенок до 12 лет; наши дополнительные кровати не предназначены для взрослых. И вы не увидите цену за дополнительную кровать в результатах поиска - только когда рассчитаете окончательную цену.
И даже не заставляйте меня начинать с динамической упаковки. Хотите продать жилье + прокат авто? Нет проблем; интегрируйтесь с двумя разными поставщиками, и вперед ... вручную обновляйте список мест в городе (от поставщика услуг по аренде автомобилей), чтобы он соответствовал отелям (от поставщика размещения, который дает вам только город для каждого отеля). Конечно, при условии, что вы уже сопоставили список городов из двух, поскольку международного стандарта для кодов городов нет.
В отличие от многих других отраслей, которые выпускают много продуктов, в индустрии туризма много очень сложных продуктов. У Amazon это легко; продавать книги и продавать картошку - это одно и то же; вы даже можете отправить их в одной коробке. Они легко сочетаются и не собираются из многих частей. :)
PS Ссылка на интересную недавнюю ветку в Hacker News с некоторой инсайдерской информацией о рейсах . PPS Недавно наткнулся на отличный, хотя и довольно старый пост в блоге о протоколе NDC IATA с обзором того, как связана индустрия туризма, и уроком истории, как это произошло .