SEO с помощью JavaScript: как Google сканирует скрипты на JavaScript

| Среда, 24 октября, 2018

Метки: SEO, Javascript

Когда мы занимаемся SEO (поисковая оптимизация), то всегда обращаем внимание на ранги и SERP (страница результатов поиска), но нам также важно знать о процессах, которые происходят перед этим: сканирование и индексирование. Google оценивает (ранжирует) проиндексированные веб-страницы. Если веб-страница не проиндексирована или же проиндексирована неправильно, то это отразится на рейтинге.

“Веб уже перешёл от простого HTML – и в плане улучшения SEO с этим приходится считаться. Настало время перенимать опыт разработчиков JS и делиться с ними знаниями о SEO. JS не собирается никуда уходить”, - считает Джон Мюллер, старший аналитик тенденций в области веб.

Поэтому нужно понимать следующее. Процессы анализа в Google веб-сайта с JavaScript и веб-сайта без JavaScript, сильно отличаются: скрипты JavaScript вредят рейтингу в том случае, если реализованы недостаточно осмотрительно.

В 2014 году Google заявил, что компания старается эффективнее понимать веб-страницы, выполняя рендеринг скриптов JavaScript. Но как на самом деле они это делают? И в какой степени они могут визуализировать скрипты JavaScript? Давайте подробнее рассмотрим весь процесс сканирования и индексирования. Кто (или в этом случае – что) участвует в этом процессе?

Googlebot

Этот сканер также называют пауком. Всякий раз, когда на веб-сайте появляется новая страница или какие-либо новые обновления, то Googlebot будет первой точкой соприкосновения с поисковой системой. Он сканирует веб-страницы и анализирует все найденные на ней ссылки. Таким образом, бот обнаруживает новые ссылки и новые веб-страницы для последующего сканирования. Затем просканированные веб-страницы передаются алгоритму Caffeine для индексации.Имейте в виду, что с помощью robots.txt можно отказать Googlebot в доступе. Если нужно, чтобы веб-страницы с JavaScript были просканированы и проиндексированы, то первое, что нужно сделать, – это разрешить к ним доступ для сканеров. Не забудьте также отправить URL-адреса в Google с помощью консоли поиска Google, выслав XML-карту сайта.

Caffeine

Этот алгоритм индексирования был запущен в 2010 году. Всё то, что просканирует Googlebot, далее будет проиндексировано алгоритмом Caffeine, и этот индекс повлияет на выбор Google о том, какие веб-страницы будут ранжироваться. Ещё одна важная работа, которую выполняет Caffeine, помимо индексации контента, – это рендеринг JavaScript на странице. Этот аспект очень важен: без рендеринга поисковая система не сможет полностью проиндексировать контент веб-страницы.

Обнаруженные во время рендеринга ссылки также будут отправлены обратно Googlebot для очередного сканирования, что приведёт ко второй индексации. Это очень значимый момент, потому что одна из важнейших составляющих SEO – это внутренняя перелинковка. Внутренняя перелинковка веб-страниц на сайте даёт Google мощный сигнал в плане таких аспектов, как рейтинг страницы, авторитетность и частота сканирования. Всё это в конечном итоге повлияет на ранжирование страниц.

Процесс сканирования и индексирования веб-страниц с JavaScript отличается Ниже представлена инфографика с конференции Google i/o этого года, которая демонстрирует рабочий процесс сканирования, индексирования и рендеринга.

Рисунок полезно изучить для понимания общей идеи этого процесса в целом, однако почему бы не рассмотреть его более подробно? Что же происходит, когда поисковая система доходит до простых HTML-страниц без JavaScript?

  • Googlebot загружает сырой HTML-файл веб-страницы.
  • Googlebot передает HTML-файл алгоритму Caffeine для извлечения всех ссылок и метаданных.
  • Googlebot продолжает сканировать все найденные на странице ссылки.
  • Извлечённый контент индексируется алгоритмом Caffeine и используется для ранжирования.

Вот что происходит, когда Googlebot доходит до веб-страницы с JavaScript

  • Googlebot загружает сырой HTML-файл веб-страницы.
  • Ничего не происходит, потому что всё скрыто в JavaScript.
  • Алгоритму Caffeine нечего индексировать.
  • Веб-страница не ранжируется по причине отсутствия контента.

Однако это был худший сценарий: когда JavaScript внедрён таким образом, что поисковая система не может его визуализировать. Таким образом, проиндексированная версия веб-страницы с точки зрения Google оказывается пуста. Пустые веб-страницы не будут эффективно ранжироваться. Именно поэтому нужно разобраться, как внедрить JavaScript таким образом, чтобы он был полностью проиндексирован или выглядел как можно более похожим на то, каким его видит пользователь современного браузера.

К счастью, теперь Caffeine действительно умеет визуализировать файлы JavaScript подобно браузерам. Google сделал всем веб-разработчикам и специалистам по SEO большой сюрприз, когда продемонстрировал, что WRS (служба веб-рендеринга поисковой системы) в действительности основана на возможностях Chrome 41. С выходом в сентябре Chrome 69 поисковая система сильно отстаёт в плане рендеринга современных скриптов JavaScript. Но это всё-таки лучше, чем совсем ничего, верно?

Что происходит, когда Google с возможностями рендеринга доходит до веб-страниц с JavaScript

  • Googlebot загружает HTML-файл веб-страницы.
  • Первое индексирование происходит мгновенно без рендеринга контента, рендерингом JavaScript занимается алгоритм Caffeine.
  • Любые извлечённые ссылки, метаданные, контент и так далее передаются Googlebot для дальнейшего сканирования.
  • Полученный контент индексируется во время второго сеанса индексации и далее используется для ранжирования.

    Означает ли это, что Google может без проблем сканировать и индексировать веб-страницы с JavaScript? Короткий ответ: нет. Google способен сканировать скрипты JavaScript, но не все. Вот почему так важно реализовать грациозную деградацию веб-страниц. Таким образом, даже если поисковая система не сможет правильно выполнить рендеринг веб-страницы, то, по крайней мере, это не будет катастрофой (скажите спасибо хоть за это).

    Дело в том, что рендеринг JavaScript для Google является ресурсоёмким и дорогим процессом. Первая индексация может произойти настолько быстро, насколько быстро удастся проиндексировать HTML-составляющую, но важна следующая часть – вторая индексация после рендеринга будет помещена в очередь до тех пор, пока для обработки не появится достаточно свободных ресурсов.

    Представьте себе, что это означает: вы подали Google еду, но, поскольку у него отсутствуют столовые приборы для того, чтобы её съесть, он может судить о её вкусе только визуально, а сервер не принесёт столовые приборы до тех пор, пока не обслужит 3 или более других столика с ранее принятыми заказами. После этого Google опубликует отзыв в Интернете, в котором скажет, что ваша еда – это полный отстой. Разве это справедливо? Конечно же, нет.

    Подобно частоте сканирования, насколько быстро и часто будет выполняться вторая индексация, зависит от нескольких факторов, таких как рейтинг страницы, количество и качество обратных ссылок, частота обновления, количество посетителей и даже скорость загрузки сайта.

    Как убедиться в том, что Google сможет правильно просканировать, визуализировать и проиндексировать сайт с JavaScript? Заметьте, это произойдёт не так быстро, потому что скорость – это отдельный вопрос. Два важных инструментария, которые можно применить для оценки того, насколько эффективно Google сканирует и индексирует сайт с JavaScript, – это инструмент Fetch and Render в Google Search Console и браузер Chrome 41.

    Обобщим…

  • Googlebot сканирует, а алгоритм Caffeine выполняет индексирование и рендеринг.
  • В случае веб-страниц на HTML Googlebot запрашивает страницу и загружает HTML, затем алгоритм Caffeine индексирует контент.
  • Для веб-страниц с JavaScript: Googlebot запрашивает страницу, загружает HTML, выполняется первое индексирование. Затем Caffeine выполняет рендеринг страницы и отправляет обнаруженные ссылки и данные обратно в Googlebot для очередного обхода, после повторного сканирования выполняется вторая индексация.
  • Рендеринг – это ресурсоёмкий процесс, а вторая индексация будет помещена в очередь, что понизит её эффективность.
  • Используйте инструмент Fetch and Render из Google Search Console и браузер Chrome 41 для того, чтобы оценить, насколько качественно Google способен проиндексировать страницу с JavaScript.


  • Copyright © CodeHint.ru 2013-2018