Почему сканеры поисковых систем не запускают JavaScript?

Я работал с некоторыми продвинутыми приложениями javascript, используя множество запросов ajax для отображения моей страницы. Чтобы приложения можно было сканировать (Google), я должен следовать https://developers.google.com/webmasters/ajax-crawling/?hl=fr . Это говорит нам сделать что-то вроде: изменить дизайн наших ссылок, создать html-снимки... чтобы сделать сайт доступным для поиска.

Интересно, почему поисковые роботы не запускают javascript, чтобы получить отображенную страницу и проиндексировать ее. Есть ли причина этого? Или это недостающая функция поисковых систем, которая может появиться в будущем?


person Khanh TO    schedule 10.10.2013    source источник
comment
Google уже запускает javascript.   -  person Loïc Faure-Lacroix    schedule 10.10.2013
comment
@LoïcFaure-Lacroix, он говорит о поисковых роботах, я сначала подумал так же   -  person Jay Harris    schedule 10.10.2013
comment
@JayHarris GoogleBot делает это.   -  person Loïc Faure-Lacroix    schedule 10.10.2013
comment
@Loïc Faure-Lacroix: у вас есть ссылка на официальную документацию по этому поводу? Благодарю.   -  person Khanh TO    schedule 10.10.2013
comment
@LoïcFaure-Lacroix запускает какой-то javascript, а не весь скрипт   -  person Jay Harris    schedule 10.10.2013
comment
@JayHarris это действительно так. У меня есть этот сайт git.vosnax.ru, который полностью на javascript. Все страницы индексируются без особых проблем. К каждой странице можно получить доступ с помощью URL-адреса. По этой причине хранение статических страниц не является обязательным. Но если по какой-то причине интернет будет медленным, и робот Google проиндексирует страницу, которая не закончила загрузку. Тогда я был бы вполне понятен. Вы можете выполнить поиск сайта в Google, и вы можете получить некоторые результаты с контентом, который проиндексирован.   -  person Loïc Faure-Lacroix    schedule 10.10.2013
comment
Этот вопрос кажется не по теме, потому что он касается SEO.   -  person John Conde    schedule 10.10.2013
comment
@John Conde: На самом деле, я спрашиваю о технических причинах поисковых систем с сайтами ajax. Не о SEO.   -  person Khanh TO    schedule 10.10.2013
comment
Тогда это не по теме для этого веб-сайта, потому что речь идет не о коде, который вы написали.   -  person John Conde    schedule 10.10.2013


Ответы (3)


Несмотря на то, что GoogleBot действительно обрабатывает сайты, написанные на js. Большая проблема с сайтами ajax заключается в том, что даже если GoogleBot может выполнять js и обрабатывать запросы ajax.

Веб-сканер не может точно знать, когда страница закончила загрузку. По этой причине поисковый робот может загрузить страницу и проиндексировать ее до того, как начнет выполнять запросы ajax. Допустим, скрипт будет выполняться при прокрутке страницы. Очень вероятно, что бот Google не будет запускать все возможные события.

Другая проблема — навигация.

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

Если на вашем сайте каждая страница может быть доступна через полный URL-адрес. Тогда у вас не должно возникнуть проблем с индексацией вашего сайта.

Тем не менее, сценарии будут запущены. Но не факт, что сканер проиндексирует страницу после того, как закончит обработку всех скриптов.

Вот ссылка:

GoogleBot стал умнее: он был написан в 2010 году, и мы можем ожидать, что с тех пор веб-сканеры стали намного умнее.

person Loïc Faure-Lacroix    schedule 10.10.2013

Чтение чистого HTML намного быстрее, чем ожидание/вызов функций javascript и т. д., а затем уведомление о том, как настроена страница. Думаю, это основная причина.

Другой может заключаться в том, что все сканирование автоматизировано, поэтому, опять же, чтение статической страницы намного проще и имеет гораздо больше смысла. Как и в случае с javascript, содержимое страницы может меняться каждую секунду и т. д., что приводит к "запутыванию" поискового робота.

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

person Kaarel    schedule 10.10.2013

Страницы со скриптами для краулеров читать сложнее, потому что все дело в динамически меняющемся контенте. А краулеры заботятся не только о первом посещении сайта, они перепроверяют проиндексированные страницы каждую неделю-две в быстром режиме, просто сравнивая в стиле "найди 10 отличий" по содержанию и изменению ссылок. Перепроверка страниц скриптами будет слишком болезненной и затратной для краулеров во всемирной паутине.

person Nikolay Talanov    schedule 10.10.2013