×
Россия +7 (495) 139-20-33

Эксперименты с JavaScript в Google

Россия +7 (495) 139-20-33
Шрифт:
1 5842

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

Гипотеза

Судя по проведенным ранее экспериментам, результаты которых актуальны и поныне, JavaScript из всех поисковиков читает лишь Google. Поэтому, в данном исследовании затрагивается лишь эта поисковая система. Многие знают, что от Google контент спрятать сложно, но интересно было все же разобраться, парсит ли Google JavaScript любой сложности или только простые выражения?

Гипотеза состояла в том, что поисковая ситема Google распознает лишь простые варианты скриптов и контент можно спрятать, усложнив скрипт.

Цель эксперимента

Целью данного исследования является подтвердить или опровергнуть гипотезу, а также в случае опровержения определить, какие все же скрипты Google не распознает.

Проведение эксперимента

Для проведения эксперимента 20 февраля 2011 г. была создана отдельная страница, на которой расположен контент с ссылками с помощью JavaScript в разных вариантах: с помощью обычного document.write, кусочного, вызова функции, подключения внешних файлов, в том числе обфускейченных (запутанных), а также с помощью работы с DOM документа.

Ссылка на экспериментальную страницу была добавлена в Твиттере с просьбой заретвитить (спасибо всем за помощь, в сумме было 27 ретвитов). Другими словами, тви-друзья помогли сделать страницу популярной для Google, чтобы ускорить индексацию и быстрее узнать результаты. Через несколько минут страница уже была в индексе, но ссылки пока не работали. На данный момент основной робот Google проиндексировал весь необходимый контент, и можно проверять результаты.

Результаты эксперимента

Рассмотрим полученные результаты по каждому из видов используемого javascript-подхода.

1. Безатрибутная ссылка

Этот приём использует ссылку без атрибута href и для роботов такой тег не является ссылкой. На экспериментальной странице с помощью DOM был добавлен атрибут href:

< a name="a" id="a">безатрибутный индекс.

Результаты в данном случае показали, что такая ссылка не работает для Google, то есть, вес не передаёт. По уникальному анкору «безатрибутный индекс» страница-акцептор не находится.

2. Кусочный document.write

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

document.write("Немного контента с уникальной фразой devjslink и обещанной ссылкой " + «<» + «a h» + «ref» + "="h" + «tt» + «p:» + «//» + «seodic» + «.» + «ru» + «/terms/» + «%D0%B6%D0%B8%D1%80%D0%BD%D0%B0%D1%8F-%D1%81%D1%81%D1%8B%D0%BB%D0%BA%D0%B0» + «»" + «>» + «кусочная js ссылка» + «<» + «/» + «a» +«>» + «.»);

Такая конструкция не помогла, Google проиндексировал контент, как видит это пользователь. По уникальному тексту devjslink можно найти экспериментальную страницу, а по уникальному тексту анкора кусочная js ссылка находится акцептор (страница, куда ведет ссылка). То есть, в этом случае вес по ссылке передался, она была учтена.

3. Вызов внутренней функции и document.write

Внутри документа была описана функция, содержащая document.write с выводом определенного текста и ссылки. В нужном месте документа была вызвана эта функция.

Результаты показывают, что в этом случае яваскрипт-контент индексируется, и ссылка находится. Такая ссылка тоже передает вес.

4. Вызов функции из внешнего файла и document.write

Эта часть похожа на предыдущую. Только функция была определена во внешнем доступном файле file2.js, подключенном в документе.

Результаты показали, что вызов функции из внешнего файла также обрабатывается Google, и результаты аналогичные предыдущим — контент индексируется, ссылка работает.

Интересно было посмотреть серверные логи, когда именно поисковый робот заходил за дополнительными .js файлами. Анализ логов показал, что Google читает внешние файлы не сразу, а через какой-то промежуток времени (около недели) и приходит с тем же юзер-агентом «Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)». Также интересно, что внешние файлы для страниц запрашиваются, практически, одновременно (в отличие от html-страниц сайта) с частотой около 2 раз в месяц.

5. Внешний скрипт и document.write

Во внешнем скрипте (file1.js) сразу был описан document.write без дополнительных функций. По текущим результатам, контент проиндексирован, так как экспериментальная страница находится по уникальному тексту из скрипта devjsrelink. Однако, ссылка не работает (проверка). Очень странное явление, так как подобная конструкция оказалась не самой сложной, и Google её распарсил (распознал), но ссылке вес не передал. Полагаю, что это временно, и после следующей переиндексации ссылка сработает.

6. Обфускейченный внешний скрипт с document.write

В этой части эксперимента было создано два обфускейченных файла: file3.js, file4.js. Различаются они лишь методом обфускации.

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

7. Запрет индексации внешнего скрипта в robots.txt

В этой части был создан файл file5.js, содержащийся, в отличие от других, в папке /robots/, которая закрыта от индексации с помощью корневого файла robots.txt.

Результаты показывают, что контент из этого файла так и не проиндексировался (проверочная ссылка). Анализ серверных логов показал, что в папку /robots/ Google не заходил, а соответственно, file5.js не индексировал.

8. Работа с DOM документа

Следующий текст с ссылкой были созданы с помощью работы с DOM документа.

var a = document.createElement("A");
a.setAttribute("href«, «http://seodic.ru/terms/%D1%80%D0%B5%D0%BB%D0%B5%D0%B2%D0%B0%D0%BD%D1%82%D0%BD%D0%BE%D1%81%D1%82%D1%8C»);
a.innerHTML = «экспериментальная dom ссылка»;
var s = document.createElement("SPAN«);
s.innerHTML = «Этот текст и ссылка добавлены с помощью работы объектной модели DOM... »;
s.appendChild(a);
var span = document.getElementById("b");
span.appendChild(s);

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

9. Комплексный вариант скрипта

И последний случай — комплексный вариант, в котором задействованы все предыдущие модели: обфускейченный внешний файл размещаем в папку, закрытую от индексации в robots.txt, при этом в файле используем функцию, работающую с DOM. В нужном месте вызываем функцию, печатающую контент с ссылкой.

Результаты такого варианта прогнозируемы, контент не индексируется, ссылка соответственно.

Выводы

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


(Голосов: 5, Рейтинг: 5)
Читайте нас в Telegram - digital_bar

Есть о чем рассказать? Тогда присылайте свои материалы Ане Макаровой


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
  • ikutsin
    больше года назад
    Интересный и состоятельный эксперимент. Спасибо за публикацию.
    -
    0
    +
    Ответить
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
Как выбрать CMS для интернет-магазина
Колян Гусляков
2
комментария
0
читателей
Полный профиль
Колян Гусляков - Если же у вас не получилось решить данную проблему, предлагаю воспользоваться авторской сборкой от neoseo. neoseo.ru/internet-magazin-seo-magazin-model. Они предоставляют дополнительные модули для работы и взаимодействия с вашим сайтом, современный дизайн, качественную оптимизацию и продвижение. Советую попробовать, не пожалеете.
«Юзабилити-лаборатория»: оставляйте заявку на участие!
Анна Макарова
381
комментарий
0
читателей
Полный профиль
Анна Макарова - Антон, добрый день! Ваш сайт не попал в основную выборку для юзабилити-анализа, но эксперты постараются сделать по вашему сайту видеоразбор (ю-ревью). Будем держать вас в курсе )
Тест по SEO – проверь свой уровень знаний
Артем Дорофеев
8
комментариев
0
читателей
Полный профиль
Артем Дорофеев - Полный текст вопроса со скриншотом панели прикладываю. Итого, что имеем: - на скриншоте отмечено, что это фильтр МПК - сайт коммерческий - рекламы на сайте нет С вероятностью 95% это ошибка (которая уже дважды случалась в Яндексе), когда они случайно "закосили" неповинные сайты. Тогда по запросу Платону фильтр быстренько снимали. Но вопрос даже не на знание этого нюанса. В любой непонятной ситуации, прежде чем что-либо предпринимать (особенно переписывать весь контент на сайте или менять дизайн, как указано в других вариантах) - фильтр следует подтвердить. Правильный ответ: "Написать письмо в техподдержку Яндекса".
Выбираем CMS для сайта с точки зрения SEO: базовые требования
SEO.RU
6
комментариев
0
читателей
Полный профиль
SEO.RU - Спасибо за замечание, действительно была допущена неточность - возможно информация была не так давно обновилась. Данные в статье поправим на актуальные.
Кейс: как за 30 дней вывести новый сайт в ТОП выдачи Google
Дмитрий
1
комментарий
0
читателей
Полный профиль
Дмитрий - Нейромаркетинговые исследования также могут положительно повлиять на продвижение сайта, я лично убедился обратившись к компании Neorotrack, и результат был отличным
100+ ресурсов по SEO для изучения поисковой оптимизации с нуля
Марина Ибушева
0
комментариев
0
читателей
Полный профиль
Марина Ибушева - Спасибо за добавление. Мы уже работаем над отдельным материалом про курсы, потому что одной статьи мало, чтобы охватить все крутое по обучению)
7 способов увеличить авторитетность сайта «в глазах» поисковых систем
Grigo5
4
комментария
0
читателей
Полный профиль
Grigo5 - Понятно.
Digital-marketing: как выжить в кризис. Опыт реальной компании
Maks
1
комментарий
0
читателей
Полный профиль
Maks - Спасибо за опыт Вашей компании, Иван Папусь. Интересно получилось! Желаю Вашему бизнесу стабильности и успешно пережить все кризисы))
SEO must go on! Почему в кризис нельзя останавливать продвижение сайта
everystraus
0
комментариев
0
читателей
Полный профиль
everystraus - Мы даже варианты не рассматривали. Если проект неустойчив, сразу предлагали сбавить обороты до минимума, но и так, чтоб не свалиться в штопор. Именно по СЕО чаще всего.
Как стандартизировать данные семантики с помощью логарифмов
Юлий
1
комментарий
0
читателей
Полный профиль
Юлий - Чем снималась коммерцелизация?
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
381
Комментариев
373
Комментариев
262
Комментариев
249
Комментариев
171
Комментариев
156
Комментариев
141
Комментариев
121
Комментариев
113
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
89
Комментариев
80
Комментариев
77
Комментариев
67
Комментариев
60
Комментариев
60
Комментариев
59
Комментариев
57

Отправьте отзыв!
Отправьте отзыв!