Как Googlebot обрабатывает бесконечную прокрутку и пагинацию в JavaScript

Googlebot обрабатывает бесконечную прокрутку и пагинацию, симулируя поведение пользователя с помощью актуального рендерера Chromium. Когда ваш сайт загружает контент динамически через скрипты, краулер выполняет JavaScript для построения объектной модели документа (DOM). Этот процесс позволяет Google видеть контент так, как его увидел бы человек, при условии, что реализация соответствует стандартным веб-шаблонам. Без этих шаблонов краулер может пропустить критически важные данные, в результате чего ваш контент останется невидимым в результатах поиска.

Как Google обнаруживает контент при бесконечной прокрутке?

Обнаружение зависит от наличия тегов-якорей, по которым Googlebot может перейти. При настройке бесконечной прокрутки разработчики часто инициируют загрузку контента на основе позиции прокрутки, что является пассивным событием. Поскольку Googlebot не всегда прокручивает страницу глубоко вниз, он может никогда не запустить события, необходимые для загрузки вашего контента. Если контент отсутствует в первоначальном ответе HTML или не связан через стандартные атрибуты href, краулер считает, что страница заканчивается раньше.

Как Googlebot обрабатывает бесконечную прокрутку и пагинацию в JavaScript

Чтобы обеспечить видимость, каждый элемент в рамках бесконечной прокрутки в идеале должен иметь соответствующий уникальный URL. Это позволяет краулеру обращаться к контенту напрямую, а не полагаться на триггер прокрутки. Если ваш сайт использует кнопку «Загрузить еще» вместо автоматической прокрутки, убедитесь, что эта кнопка представляет собой стандартный тег-якорь с действительным href. Это дает краулеру четкий путь для перехода, даже если фактическая доставка контента обрабатывается асинхронно.

Каковы распространенные подводные камни пагинации?

Наиболее частая ошибка при пагинации — это отсутствие обновления URL при переходе пользователя с одной страницы на другую. Если URL остается статичным при смене контента, Googlebot воспринимает всю последовательность как одну страницу. Это создает узкое место индексации, при котором эффективно обрабатывается только первый набор элементов, в то время как остальные остаются скрытыми от поискового индекса.

Другая проблема заключается в использовании нестандартных паттернов взаимодействия. Использование прослушивателей событий на некликабельных элементах для загрузки страниц создает барьер для краулера. Когда контент доступен только через функцию JavaScript, привязанную к div или span, Googlebot не может программно «кликнуть» по нему, чтобы увидеть, что находится дальше. Всегда используйте семантические элементы HTML для элементов управления навигацией.

Как Googlebot обрабатывает бесконечную прокрутку и пагинацию в JavaScript — 2
  • Убедитесь, что каждый пагинированный результат имеет уникальный URL, доступный через стандартные теги-якоря HTML.
  • Внедрите API History для обновления URL браузера по мере перемещения пользователя по контенту.
  • Избегайте использования скрытых триггерных кнопок, требующих определенных действий пользователя, таких как движение мыши.
  • Предоставьте отрендеренный на сервере контент для первой страницы, чтобы гарантировать ее немедленное обнаружение.

Как Googlebot рендерит JavaScript-контент?

Google использует двухэтапный процесс индексации. Сначала он получает исходный HTML и индексирует текст. Если страница содержит JavaScript, он ставит URL в очередь на рендеринг. Во время этой второй волны движок Chromium выполняет скрипты для заполнения страницы динамическим контентом. Этот процесс потребляет ресурсы, поэтому ваш сайт должен быть оптимизирован для скорости и эффективности.

Если ваш бандл JavaScript слишком велик или содержит ошибки, останавливающие выполнение, фаза рендеринга завершится сбоем. Это означает, что Googlebot проиндексирует только оболочку вашей страницы без соответствующего контента. Тестирование страниц с помощью инструмента проверки URL в Search Console — лучший способ убедиться, что отрендеренный HTML соответствует вашим ожиданиям.

Поиск Google видит этот контент наряду с контентом в HTML веб-сайта.

Google Search Central

Как Alien Road применяет это

В Alien Road мы управляем техническим SEO для клиентов, проводя аудит взаимодействия между их JavaScript-фреймворками и краулером Google. Мы начинаем с отключения JavaScript в браузере, чтобы посмотреть, что краулер получает изначально. Если контент исчезает, мы предлагаем гибридную стратегию. Например, клиент розничной торговли с огромным каталогом продуктов может использовать рендеринг на стороне сервера для первых 20 товаров и ленивую загрузку для остальных.

Мы также проводим регулярные симуляции сканирования для проверки ошибок рендеринга. Определяя, где зависает браузер или где скрипты не выполняются, мы помогаем нашим клиентам сократить время, необходимое Google для просмотра их обновлений. Наш подход заключается в обеспечении постоянной доступности контента независимо от того, успешно ли краулер инициирует событие прокрутки или клик по кнопке.

Что выбрать: бесконечную прокрутку или нумерованные страницы?

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

Бесконечная прокрутка предлагает плавный опыт для социальных лент или галерей изображений, где пользователи хотят продолжать просмотр без перерывов. Однако для помощи краулерам она требует реализации метатега «prev/next» или страницы «просмотреть все». Без этого вы рискуете потерять видимость контента, скрытого глубоко в ленте.

  • Используйте нумерованную пагинацию для больших каталогов продукции или наборов документации.
  • Используйте бесконечную прокрутку для медиа-ориентированных лент с высоким уровнем вовлеченности.
  • Всегда предоставляйте страницу «Просмотреть все» при использовании бесконечной прокрутки, чтобы упростить индексацию.
  • Регулярно тестируйте рендеринг с помощью инструментов разработчика для выявления сбоев на основе скриптов.

Следующие шаги для вашего технического аудита

Начните эту неделю с аудита поведения загрузки JavaScript на вашем сайте. Откройте свою страницу в браузере, отключите JavaScript и обновите ее. Если ключевой контент, который вы хотите проиндексировать, отсутствует, у вас есть основа для немедленного улучшения. Убедитесь, что все ваши пагинированные ссылки присутствуют в исходном коде в качестве стандартных якорей HTML.

После проверки ссылок используйте инструмент проверки URL для выборки ваших пагинированных страниц. Сравните вывод «Просмотреть просканированную страницу» с вашим живым сайтом. Если вы заметили расхождения, проверьте консоль на наличие ошибок JavaScript, которые могут блокировать процесс рендеринга. Устранение этих пробелов гарантирует, что ваш контент будет оставаться доступным для поиковых систем в любое время.

Поделиться