Сеть является крупнейшим и наиболее важным источником информации, когда-либо созданным человечеством. Но поскольку он был разработан для людей, компьютеры и автоматизированные системы не могут легко собирать или автоматически понимать все эти данные.

Поэтому, если кто-то хочет сравнить цены на акции, информацию о продуктах или цены на отели, он может часами собирать и переводить эту информацию самостоятельно. Плохие новости? Эта задача не просто утомительна и трудоемка; он также подвержен человеческим ошибкам.

Вот почему такие парсеры, как Apify, заставляют Интернет работать на вас.

Веб-скрапинг — это процесс извлечения данных с веб-сайтов и их экспорта в более удобные форматы. Собранные данные затем можно скомпилировать в электронную таблицу или направить, например, в API, чтобы использовать их для своих нужд.

Apify — это платформа для сбора и автоматизации веб-страниц, созданная с помощью Meteor. Он позволяет извлекать данные с веб-сайтов, обрабатывать собранные данные и автоматизировать рабочие процессы в Интернете.

Давайте изучим универсальный магазин Apify для парсинга веб-страниц и роботизированной автоматизации процессов (RPA) в этом тематическом исследовании и выясним, почему они решили построить умнее с Meteor.

Познакомьтесь с командой Apify: два соучредителя, которые приняли участие в первой в истории стипендии Y Combinator

Еще летом 2015 года Y Combinator (YC) запустил новую программу под названием Y Combinator Fellowship. Идея была проста: участники получат два месяца рекомендаций от самого престижного в мире стартап-сообщества и грант в размере 12 000 долларов на разработку минимально жизнеспособного продукта (MVP).

Ян Чурн и Якуб Балада узнали о стипендии YC, читая Hacker News. Они работали неполный рабочий день над тем, что позже станет Apify. Поэтому они записали минутное видео и заполнили заявку. Ян случайно нажал кнопку «Отправить» вместо «Сохранить черновик» за целых три дня до крайнего срока, и «жребий был брошен».

Только 20 компаний будут приглашены в YC Fellowship (из 6500 заявок). Ян и Якуб подсчитали свои шансы оказаться в их числе, и они составили ужасающие 0,3%.

Несмотря ни на что, дуэт из Праги, Чехия, получил электронное письмо с приглашением на интервью. Чтобы «максимизировать» свои шансы, Ян и Джейкоб пропустили вариант собеседования по Skype и забронировали авиабилеты для личного собеседования, решив проехать «10 000 км за 10-минутное собеседование».

Игра окупилась. Их стартап Apifier был среди 32 других проектов, отобранных для участия в первой стипендии Y Combinator Fellowship. С августа по ноябрь 2015 года они провели в Маунтин-Вью, штат Калифорния, создавая то, что впоследствии станет самой мощной платформой для парсинга и автоматизации.

🖥️ Обо всем опыте Яна и Якоба в YC Fellowship можно прочитать здесь.

Так что же делает Apify?

Apify — это платформа программное обеспечение как услуга (SaaS) для бизнеса (B2B) для парсинга веб-страниц, извлечения данных и веб-автоматизации. Это позволяет людям автоматизировать любой рабочий процесс, который человек может выполнять вручную в веб-браузере, а затем запускать его в масштабе в облаке.

«Мы делаем Интернет более программируемым, позволяя превратить любой веб-сайт в API».

API или интерфейс прикладного программирования — это программное обеспечение, которое позволяет двум приложениям взаимодействовать друг с другом. Чтобы превратить любой веб-сайт в API, Apify использует этот трехэтапный процесс:

1. Собирайте данные с любого веб-сайта. Немедленно извлекайте неограниченное количество структурированных данных с помощью готовых к использованию инструментов парсинга. Вы также можете работать с командой Apify над созданием индивидуального решения для вашего уникального варианта использования. Вы получите быстрые и точные результаты, на которые можно положиться.

Кроме того, Apify использует интеллектуальную ротацию центров обработки данных и резидентных прокси в сочетании с ведущей в отрасли технологией снятия отпечатков пальцев в браузере. Это делает ботов Apify неотличимыми от людей, поэтому они никогда не блокируются.

Узнайте, как веб-скрапинг и Apify могут заставить Интернет работать на вас.

2. Автоматизируйте любой онлайн-процесс. Масштабируйте процессы, роботизируйте утомительные задачи и ускоряйте рабочие процессы с помощью гибкого программного обеспечения для автоматизации Apify. Их автоматизация позволяет вам работать быстрее и эффективнее, чем ваши конкуренты, с меньшими усилиями. Автоматизация повседневных задач в Интернете позволяет людям тратить больше времени на важные вещи.

3. Интегрируйте собранные данные в любую систему. Экспортируйте очищенные данные в машиночитаемые форматы, такие как JSON или CSV. Apify позволяет легко интегрироваться с существующими рабочими процессами Zapier или Make или любым другим веб-приложением с использованием API и веб-перехватчиков.

От небольших стартапов до компаний из списка Fortune 500, Apify позволяет своим инновационным пользователям улучшать свои продукты, маркетинг и процесс принятия решений, используя данные из Интернета.

💡 Ознакомьтесь с платформой Apify, ценами, вариантами использования и примерами здесь.

4 причины, по которым мы копаем

Создание собственных решений для парсинга веб-страниц требует много времени и денег. Являетесь ли вы разработчиком или стартапом, этот процесс может быть важным, но он уводит вас от основного бизнеса.

Создание собственных скребков — даже не идеальное решение. Скребки со временем могут заблокироваться или стать ненадежными. Кроме того, если вам нужно очистить много данных, эти решения не могут быть легко масштабированы, чтобы не отставать от ваших потребностей.

Платформа Apify ежемесячно обрабатывает более 1 миллиарда веб-страниц. И это еще не самое большое ее достижение.

Платформа Apify невероятно мощная и гибкая

Платформа Apify может буквально автоматизировать все, что можно сделать вручную в веб-браузерев масштабе.

Apify имеет встроенные функции, такие как автомасштабирование, планировщики запуска и ротация пулов прокси. Вы можете одновременно очищать миллионы точек данных, настраивать сложные решения и поддерживать их. Эти важные данные продолжают поступать в любом формате и могут быть отправлены непосредственно в вашу базу данных.

Что касается гибкости, Apify построен на надежных инструментах с открытым исходным кодом (например, Meteor!), поэтому вам никогда не придется беспокоиться о привязке к поставщику.

Это мечта для бизнеса и разработчиков

Более 1000 клиентов в 95 странах доверяют гибким, готовым к использованию инструментам Apify для быстрого и точного выполнения работы.

Когда дело доходит до разработчиков, Apify — это самый простой способ доставки программного обеспечения для автоматизации. Их богатая экосистема разработчиков также позволяет разработчикам получать пассивный доход от инструментов, которые они создают на Apify.

Так что думайте об этом как об Airbnb программного обеспечения для автоматизации. Любая компания, которой нужны инструменты веб-скрейпинга или веб-решения RPA, может найти то, что ей нужно, на Apify, или они могут положиться на процветающее сообщество Apify Freelancers для создания доступного решения.

Наряду с Apify Proxy и Apify Storage платформа Apify представляет собой комплексное решение как для разработчиков, так и для клиентов.

👍 Разработчики могут размещать учебные пособия, советы, рекомендации и статьи по парсингу и автоматизации в блоге Apify. Вы также можете изучить веб-парсинг в их бесплатной Академии через Портал разработчика Apify.

Магазин Apify — это настоящий сундук с готовыми инструментами для веб-скрейпинга и проектов автоматизации.

Мощная программная платформа Apify позволяет дальновидным компаниям использовать весь потенциал Интернета с тысячами участников Apify.

Актер Apify — это бессерверная микрослужба, которая принимает ввод или вывод. Актер может выполнять любые действия, от простого действия (например, заполнения веб-формы или отправки электронного письма) до сложных операций (например, сканирования всего веб-сайта и удаления дубликатов из большого набора данных).

В Магазине Apify вы найдете сотни готовых актеров, инструментов и API, созданных программистами.

Культура Apify и «гаражный дух»

Ян и Якуб говорят, что они стремятся сделать Интернет открытым как общественное благо и основное право каждого, независимо от того, как вы хотите его использовать, как задумали его создатели. Точно так же они гордятся тем, что поддерживают открытую, динамичную культуру стартапов, которую они установили с самого начала.

«Apify по-прежнему похож на большую семью, даже когда мы растем».

По их словам, это хакеры, которые всегда находят путь вперед, даже если кажется, что его нет. Хотя они больше не помещаются в гараже, у них все еще есть свой «гаражный дух». Они гордятся тем, что строят компанию, в которой всегда хотели работать.

И Meteor гордится тем, что играет главную роль в технологическом стеке Apify.

Технический стек Apify

Короче говоря, технический стек Apify на 100% состоит из Node.js и TypeScript, работающих на AWS и Kubernetes. Вот полное изложение:

  • Внешний интерфейс: React.js, стилизованные компоненты, Storybook, Cypress.
  • Верхняя часть: TypeScript/Node.js, Next.js, Express.js, Meteor.js, Jest.
  • Инфраструктура: AWS, Kubernetes, Helm, MongoDB, Redis, DynamoDB, S3.
  • Мониторинг: New Relic, LogDNA, Sentry, PagerDuty

Вы найдете подробную ссылку на архитектуру в изображении Apify, опубликованном ниже:

Узнав, на что способен Apify, мы очень хотели узнать:

Почему Apify строит с помощью Meteor

Meteor — это фреймворк с открытым исходным кодом для беспрепятственного создания и развертывания полнофункциональных веб-приложений, мобильных и настольных приложений на Javascript.

Соучредители Apify заявили, что используют Meteor уже шесть лет. Они начали свое путешествие во время своего основания в Y Combinator Fellowship.

«Метеор — огромное преимущество для начинающего стартапа. Вы устанавливаете Meteor и сразу начинаете разработку. Это полная цепочка инструментов от серверной части до клиентской».

Теперь, когда процессы становятся все более сложными, а команда Apify продолжает расширяться, им пришлось решать новые задачи и решать проблемы масштабирования.

Решено: проблемы Apify и масштабирование с помощью Meteor

В Apify говорят, что их основной технической проблемой на серверной части остается масштабирование, в то время как пользовательский опыт становится их основным фокусом на интерфейсе.

Миграция с Handlebars на React была «огромной» проблемой, которую пришлось решить Яну и Джейкобу. Они добились этого, двигаясь снизу вверх, компонент за компонентом, с сотнями развертываний постепенно в течение более чем года.

Им также пришлось провести мозговой штурм для обходных путей для:

Плохо работающий Oplog Tailing на скорости >5 ГБ/час

Яну и Якобу нравится реактивность Метеора. Они говорят: «Опросы Oplog — потрясающая идея, и она отлично работает как в продакшене, так и при локальной разработке». Они описали это как «потрясающую функцию», которой они пользовались в течение первых четырех лет.

К сожалению, дуэт узнал, что он «перестает работать, когда ваш oplog достигает гигабайт пропускной способности каждый час».

Когда скорость их Oplog превысила 5 ГБ/час, их обвинили в «плохо работающем отслеживании Oplog». Обработка Oplog потребляла слишком много процессорного времени. Поэтому они решили, что должно быть реактивным, а что нет. Они заменили опрос Oplog запросами, выполняемыми с интервалами для всего, что они считали реактивной публикацией.

Команда постепенно заменяет различные функции Meteor пользовательскими реализациями, подобными этой. PS: Оплог Apify теперь работает со скоростью 10 ГБ/час.

Тяжелые рабочие нагрузки API требуют разделения

Изначально команда Apify реализовала свое приложение (console.apify.com) и API (api.apify.com) в единой кодовой базе Meteor.js. Но в какой-то момент их рабочие нагрузки API стали слишком большими (более 150 000 запросов в секунду).

Команда решила выделить API из общей кодовой базы в отдельное приложение Express.js. В этот момент они решили начать использовать свой API с внешнего интерфейса вместо совместного использования кода. Ян и Якуб говорят, что это помогло уменьшить размер сервера Meteor.

Что дальше для Apify

Команда Apify в настоящее время сосредоточена на расширении всех способов интеграции своих систем с платформой Apify. Они изучают новые модели ценообразования для сотен готовых актеров, доступных в Магазине Apify. И они планируют больше продвигаться на рынок веб-автоматизации.

🤖 Тсс! Apify также набирает сотрудников!

Так как же Meteor может вывести вашу команду на новый уровень?

Meteor, разрабатываемый более десяти лет и которому доверяют такие гиганты отрасли, как Apify, представляет собой зрелую платформу с открытым исходным кодом, которая позволяет вам эффективно создавать и масштабировать, чтобы вы могли обслуживать миллионы пользователей.

Вы можете создавать полнофункциональные приложения Javascript, используя один и тот же код, независимо от того, разрабатываете ли вы их для Интернета, iOS, Android или настольных компьютеров. Использование популярных фреймворков и готовых инструментов позволяет сосредоточиться на создании функций, а не на самостоятельной настройке разрозненных компонентов.

Узнайте, почему более 500 000 разработчиков теперь полагаются на Meteor!