Гид компьютерного мира - Информационный портал
  • Главная
  • Windows
  • Семантическое ядро! Двигатель в продвижении блога! Семантическое ядро — как составить правильно? Seo семантическое ядро.

Семантическое ядро! Двигатель в продвижении блога! Семантическое ядро — как составить правильно? Seo семантическое ядро.

Здравствуйте, уважаемые читатели блога сайт. Хочу сделать очередной заход на тему «сбора семядра». Сначала , как полагается, а потом много практики, может быть и несколько неуклюжей в моем исполнении. Итак, лирика. Ходить с завязанными глазами в поисках удачи мне надоело уже через год, после начала ведения этого блога. Да, были «удачные попадания» (интуитивное угадывание часто задаваемых поисковикам запросов) и был определенный трафик с поисковиков, но хотелось каждый раз бить в цель (по крайней мере, ее видеть).

Потом захотелось большего — автоматизации процесса сбора запросов и отсева «пустышек». По этой причине появился опыт работы с Кейколлектором (и его неблагозвучным младшим братом) и очередная статья на тему . Все было здорово и даже просто замечательно, пока я не понял, что есть один таки очень важный момент, оставшийся по сути за кадром — раскидывание запросов по статьям.

Писать отдельную статью под отдельный запрос оправдано либо в высококонкурентных тематиках, либо в сильно доходных. Для инфосайтов же — это полный бред, а посему приходится запросы объединять на одной странице. Как? Интуитивно, т.е. опять же вслепую. А ведь далеко не все запросы уживаются на одной странице и имеют хотя бы гипотетический шанс выйти в Топ.

Собственно, сегодня как раз и пойдет речь об автоматической кластеризации семантического ядра посредством KeyAssort (разбивке запросов по страницам, а для новых сайтов еще и построение на их основе структуры, т.е. разделов, категорий). Ну, и сам процесс сбора запросов мы еще раз пройдем на всякий пожарный (в том числе и с новыми инструментами).

Какой из этапов сбора семантического ядра самый важный?

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

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

В противном же случае (да, и в любом случае это не помешает) начать можно будет с инструментов «грубого помола». Например, Serpstat (в девичестве Prodvigator), который позволяет буквально «ограбить» ваших конкурентов на предмет используемых ими ключевых слов (смотрите ). Есть и другие подобные «грабящие конкурентов» сервисы (spywords, keys.so), но я «прикипел» именно к бывшему Продвигатору.

В конце концов, есть и бесплатный Букварис , который позволяет очень быстро стартануть в сборе запросов. Также можно заказать частным образом выгрузку из монстрообразной базы Ahrefs и получить опять таки ключи ваших конкурентов. Вообще, стоит рассматривать все, что может принести хотя бы толику полезных для будущего продвижения запросов, которые потом не так уж сложно будет почистить и объединить в один большой (зачастую даже огромный список).

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

Какие запросы будут удачно уживаться на одной странице, а какие даже не стоит пытаться объединять? Реально сложный вопрос, который я ранее решал чисто интуитивно, ибо анализировать выдачу Яндекса (или Гугла) на предмет «а как там у конкурентов» вручную убого, а варианты автоматизации под руку не попадались. Ну, до поры до времени. Все ж таки подобный инструмент «всплыл» и о нем сегодня пойдет речь в заключительной части статьи.

Это не онлайн-сервис, а программное решение, дистрибутив которого можно скачать на главной странице официального сайта (демо-версию).

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

Но про техническую сторону KeyAssort мы чуть ниже поговорим, а тут хотелось бы сказать про сам принцип, который позволяет разбить список ключевых слов (практически любой длины) на кластеры, т.е. набор ключевых слов, которые с успехом можно использовать на одной странице сайта (оптимизировать под них текст, заголовки и ссылочную массу — применить магию SEO).

Откуда вообще можно черпать информацию? Кто подскажет, что «выгорит», а что достоверно не сработает? Очевидно, что лучшим советчиком будет сама поисковая система (в нашем случае Яндекс, как кладезь коммерческих запросов). Достаточно посмотреть на большом объеме данных выдачу (допустим, проаналазировать ТОП 10) по всем этим запросам (из собранного списка будущего семядра) и понять, что удалось вашим конкурентам успешно объединить на одной странице. Если эта тенденция будет несколько раз повторяться, то можно говорить о закономерности, а на основе нее уже можно бить ключи на кластеры.

KeyAssort позволяет в настройках задавать «строгость», с которой будут формироваться кластеры (отбирать ключи, которые можно использовать на одной странице). Например, для коммерции имеет смысл ужесточать требования отбора, ибо важно получить гарантированный результат, пусть и за счет чуть больших затрат на написание текстов под большее число кластеров. Для информационных сайтов можно наоборот сделать некоторые послабления, чтобы меньшими усилиями получить потенциально больший трафик (с несколько большим риском «невыгорания»). Как это сделать опять же поговорим.

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

Как собрать пул запросов по нужной вам тематике?

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

Встает справедливый вопрос, а какие инструменты для этого использовать ? Есть один однозначный и очень правильный ответ — разные. Чем больше, тем лучше. Однако, эти самые методики сбора семантического ядра, наверное, стоит перечислить и дать общие оценки и рекомендации по их использованию.

  1. Яндекс Вордстат и его аналоги у других поисковых систем — изначально эти инструменты предназначались для тех, кто размещает контекстную рекламу, чтобы они могли понимать, насколько популярны те или иные фразы у пользователей поисковиков. Ну, понятно, что Сеошники этими инструментами пользуются тоже и весьма успешно. Могу порекомендовать пробежаться глазами по статье , а также упомянутой в самом начале этой публикации статье (полезно будет начинающим).

    Из недостатков Водстата можно отметить:

    1. Чудовищно много ручной работы (однозначно требуется автоматизация и она будет рассмотрена чуть ниже), как по пробивке фраз основанных на ключе, так и по пробивке ассоциативных запросов из правой колонки.
    2. Ограничение выдачи Вордстата (2000 запросов и не строчкой больше) может стать проблемой, ибо для некоторых фраз (например, «работа») это крайне мало и мы упускаем из вида низкочастотные, а иногда даже и среднечастотные запросы, способные приносить неплохой трафик и доход (их ведь многие упускают). Приходится «сильно напрягать голову», либо использовать альтернативные методы (например, базы ключевых слов, одну из которых мы рассмотрим ниже — при этом она бесплатная!).
  2. КейКоллектор (и его бесплатный младший брат Slovoeb ) — несколько лет назад появление этой программы было просто «спасением» для многих тружеников сети (да и сейчас представить без КК работу над семядром довольно трудно). Лирика. Я купил КК еще два или три года назад, но пользовался им от силы несколько месяцев, ибо программа привязана к железу (начинке компа), а она у меня по нескольку раз в год меняется. В общем, имея лицензию на КК пользуюсь SE — так то вот, до чего лень доводит.

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

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

  3. СерпСтат (и другие подобные сервисы) — позволяет введя Урл своего сайта получить список ваших конкурентов по выдаче Яндекса и Гугла. А по каждому из этих конкурентов можно будет получить полный список ключевых слов, по которым им удалось пробиться и достичь определенных высот (получить трафик с поисковиков). Сводная таблица будет содержать частотность фразы, место сайта по ней в Топе и кучу другой разной полезной и не очень информации.

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

  4. Букварикс — бесплатная база ключевых слов в своей собственной программной оболочке. Подбор ключевиков занимает доли секунды (выгрузка в Эксель минуты). Сколько там миллионов слов не помню, но отзывы о ней (в том числе и мой) просто отличные, и главное все это богатство бесплатно! Правда, дистрибутив программы весить 28 Гигов, а в распокованном виде база занимает на жестком диске более 100 Гбайт, но это все мелочи по сравнению с простотой и скоростью сбора пула запросов.

    Но не только скорость сбора семядра является основным плюсом по сравнению с Вордстатом и КейКоллектором. Главное, что тут нет ограничений на 2000 строк для каждого запроса, а значит никакие НЧ и сверх НЧ от нас не ускользнут. Конечно же, частотность можно будет еще раз уточнить через тот же КК и по стоп-словам в нем отсев провести, но основную задачу Букварикс выполняет замечательно. Правда, сортировка по столбцам у него не работает, но сохранив пул запросов в Эксель там можно будет сортировать как заблагороссудится.

Наверное, еще как минимум несколько «серьезных» инструментов собора пула запросов приведете вы сами в комментариях, а я их успешно позаимствую...

Как очистить собранные поисковые запросы от «пустышек» и «мусора»?

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

  1. Запросы со слишком низкой частотностью (лично я пробиваю частотность в кавычках, но без восклицательных знаков). Какой порог выбирать решать вам, и во многом это зависит от тематики, конкурентности и типа ресурса, под который собирается семядро.
  2. Для коммерческих запросов имеется смысл использовать список стоп-слов (типа, «бесплатно», «скачать», «реферат», а также, например, названия городов, года и т.п.), чтобы заранее убрать из семядра то, что заведомо не приведет на сайт целевых покупателей (отсеять халявшиков, ищущих информацию, а не товар, ну, и жителей других регионов, например).
  3. Иногда имеет смысл руководствоваться при отсеве показателем конкуренции по данному запросу в выдаче. Например, по запросу «пластиковые окна» или «кондиционеры» можно даже не рыпаться — провал обеспечен заранее и со стопроцентной гарантией.

Скажите, что это слишком просто на словах, но сложно на деле. А вот и нет. Почему? А потому что один уважаемый мною человек (Михаил Шакин) не пожалел времени и записал видео с подробным описанием способов очистки поисковых запросов в Key Collector :

Спасибо ему за это, ибо данные вопрос гораздо проще и понятнее показать, чем описать в статье. В общем справитесь, ибо я в вас верю...

Настройка кластеризатора семядра KeyAssort под ваш сайт

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

Итак, наш метод довольно прост. Идем на официальный сайт KeyAssort и скачиваем демо-версию , чтобы попробовать программу на зуб (отличие демо от полной версии — это невозможность выгрузить, то бишь экспортировать собранное семядро), а уже опосля можно будет и оплатить (1900 рубликов — мало, мало по современным реалиям). Если хотите сразу начать работу над ядром что называется «на чистовик», то лучше тогда выбрать полную версию с возможностью экспорта.

Программа КейАссорт сама собирать ключи не умеет (это, собственно, и не ее прерогатива), а посему их потребуется в нее загрузить. Сделать это можно четырьмя способами — вручную (наверное, имеется смысл прибегать к этому методу для добавления каких-то найденных уже опосля основного сбора ключей), а также три пакетных способа импорта ключей :

  1. в формате тхт — когда нужно импортировать просто список ключей (каждый на отдельной строке тхт файлика и ).
  2. а также два варианта экселевского формата: с нужными вам в дальнейшем параметрами, либо с собранными сайтами из ТОП10 по каждому ключу. Последнее может ускорить процесс кластеризации, ибо программе KeyAssort не придется самой парсить выдачу для сбора эти данных. Однако, Урлы из ТОП10 должны быть свежими и точными (такой вариант списка можно получить, например, в Кейколлекторе).

Да, что я вам рассказываю — лучше один раз увидеть:

В любом случае, сначала не забудьте создать новый проект в том же самом меню «Файл», а уже потом только станет доступной функция импорта:

Давайте пробежимся по настройкам программы (благо их совсем немного), ибо для разных типов сайтов может оказаться оптимальным разный набор настроек. Открываете вкладку «Сервис» — «Настройки программы» и можно сразу переходить на вкладку «Кластеризация» :

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

  1. Hard — все запросы попавшие в одну группу (пригодные для продвижения на одной странице) должны быть объединены на одной странице у необходимого числа конкурентов из Топа (это число задается в строке «сила группировки»).
  2. Soft — все запросы попавшие в одну группу будут частично встречаться на одной странице у нужного числа конкурентов и Топа (это число тоже задается в строке «сила группировки»).

Есть хорошая картинка наглядно все это иллюстрирующая:

Если непонятно, то не берите в голову, ибо это просто объяснение принципа, а нам важна не теория, а практика, которая гласит, что:

  1. Hard кластеризацию лучше применять для коммерческих сайтов . Этот метод дает высокую точность, благодаря чему вероятность попадания в Топ объединенных на одной странице сайта запросов будет выше (при должном подходе к оптимизации текста и его продвижению), хотя самих запросов будет меньше в кластере, а значит самих кластеров больше (больше придется страниц создавать и продвигать).
  2. Soft кластеризацию имеет смысл использовать для информационных сайтов , ибо статьи будут получаться с высоким показателем полноты (будут способны дать ответ на ряд схожих по смыслу запросов пользователей), которая тоже учитывается в ранжировании. Да и самих страниц будет поменьше.

Еще одной важной, на мой взгляд, настройкой является галочка в поле «Использовать маркерные фразы» . Зачем это может понадобиться? Давайте посмотрим.

Допустим, что у вас уже есть сайт, но страницы на нем были оптимизированы не под пул запросов, а под какой-то один, или же этот пул вы считаете недостаточно объемным. При этом вы всем сердцем хотите расширить семядро не только за счет добавления новых страниц, но и за счет совершенствования уже существующих (это все же проще в плане реализации). Значит нужно для каждой такой страниц добрать семядро «до полного».

Именно для этого и нужна эта настройка. После ее активации напротив каждой фразы в вашем списке запросов можно будет поставить галочку. Вам останется только отыскать те основные запросы, под которые вы уже оптимизировали существующие страницы своего сайта (по одному на страницу) и программа KeyAssort выстроит кластеры именно вокруг них. Собственно, все. Подробнее в этом видео:

Еще одна важная (для правильной работы программы) настройка живет на вкладке «Сбор данных с Яндекс XML» . вы можете прочитать в приведенной статье. Если вкратце, то Сеошники постоянно парсят выдачу Яндекса и выдачу Вордстата, создавая чрезмерную нагрузку на его мощности. Для защиты была внедрена капча, а также разработан спецдоступ по XML, где уже не будет вылезать капча и не будет происходить искажение данных по проверяемым ключам. Правда, число таких проверок в сутки будет строго ограничено.

От чего зависит число выделенных лимитов? От того, как Яндекс оценит ваши . можно перейдя по этой ссылке (находясь в том же браузере, где вы авторизованы в Я.Вебмастере). Например, у меня это выглядит так:

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

Механизм Яндекс XML позволяет проводить передачу лимитов, а биржи, подвязавшиеся быть посредниками, помогают все это автоматизировать. Например, на XMLProxy можно прикупить лимитов всего лишь по 5 рублей за 1000 запросов, что, согласитесь, совсем уж не дорого.

Но не суть важно, ибо купленные вами лимиты все равно ведь перетекут к вам на «счет», а вот чтобы их использовать в KeyAssort, нужно будет перейти на вкладку "Настройка " и скопировать длинную ссылку в поле «URL для запросов» (не забудьте кликнуть по «Ваш текущий IP» и нажать на кнопку «Сохранить», чтобы привязать ключ к вашему компу):

После чего останется только вставить этот Урл в окно с настройками KeyAssort в поле «Урл для запросов»:

Собственно все, с настройками KeyAssort покончено — можно приступать к кластеризации семантического ядра.

Кластеризация ключевых фраз в KeyAssort

Итак, надеюсь, что вы все настроили (выбрали нужный тип кластеризации, подключили свои или покупные лимиты от Яндекс XML), разобрались со способами импорта списка с запросами, ну и успешно все это дело перенесли в КейАссорт. Что дальше? А дальше уж точно самое интересное — запуск сбора данных (Урлов сайтов из Топ10 по каждому запросу) и последующая кластеризация всего списка на основе этих данных и сделанных вами настроек.

Итак, для начала жмем на кнопку «Собрать данные» и ожидаем от нескольких минут до нескольких часов, пока программа прошерстит Топы по всем запросам из списка (чем их больше, тем дольше ждать):

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

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

Все, что хотели, то мы и получили, и заметьте — на полном автомате. Лепота.

Хотя, если вы создаете новый сайт, то кроме кластеризации очень важно бывает наметить будущую структуру сайта (определить разделы/категории и распределить по ним кластеры для будущих страниц). Как ни странно, но это вполне удобно делать именно в KeyAssort, но правда уже не в автоматическом режиме, а в ручном режиме. Как?

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

Если программу вы таки купили, то сможете экспортировать полученное семантическое ядро (а фактически структуру будущего сайта) в Эксель. Причем, на первой вкладке с запросами можно будет работать в виде единого списка, а на второй уже будет сохранена та структура, что вы настроили в KeyAssort. Весьма, весьма удобно.

Ну, как бы все. Готов обсудить и услышать ваше мнение по поводу сбора семядра для сайта.

Удачи вам! До скорых встреч на страницах блога сайт

Вам может быть интересно

Vpodskazke - новый сервис Вподсказке для продвижения подсказок в поисковых системах SE Ranking - лучший сервис мониторинга позиций для новичков и профессионалов в SEO Сбор полного семантического ядра в Топвизоре, многообразие способов подбора ключевых слов и их группировка по страницам Практика сбора семантического ядра под SEO от профессионала - как это происходит в текущих реалиях 2018 Оптимизация поведенческих факторов без их накрутки SEO PowerSuite - программы для внутренней (WebSite Auditor, Rank Tracker) и внешней (SEO SpyGlass, LinkAssistant) оптимизации сайта
SERPClick: продвижение поведенческими факторами

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


Привет, мир!

Давай напишем ядро, которое будет загружаться через GRUB на системах, совместимых с x86. Наше первое ядро будет показывать сообщение на экране и на этом останавливаться.

Как загружаются x86-машины

Прежде чем думать о том, как писать ядро, давай посмотрим, как компьютер загружается и передает управление ядру. Большинство регистров процессора x86 имеют определенные значения после загрузки. Регистр - указатель на инструкцию (EIP) содержит адрес инструкции, которая будет исполнена процессором. Его захардкоженное значение - это 0xFFFFFFF0. То есть x86-й процессор всегда будет начинать исполнение с физического адреса 0xFFFFFFF0. Это последние 16 байт 32-разрядного адресного пространства. Этот адрес называется «вектор сброса» (reset vector).

В карте памяти, которая содержится в чипсете, прописано, что адрес 0xFFFFFFF0 ссылается на определенную часть BIOS, а не на оперативную память. Однако BIOS копирует себя в оперативку для более быстрого доступа - этот процесс называется «шедоуинг» (shadowing), создание теневой копии. Так что адрес 0xFFFFFFF0 будет содержать только инструкцию перехода к тому месту в памяти, куда BIOS скопировала себя.

Итак, BIOS начинает исполняться. Сначала она ищет устройства, с которых можно загружаться в том порядке, который задан в настройках. Она проверяет носители на наличие «волшебного числа», которое отличает загрузочные диски от обычных: если байты 511 и 512 в первом секторе равны 0xAA55, значит, диск загрузочный.

Как только BIOS найдет загрузочное устройство, она скопирует содержимое первого сектора в оперативную память, начиная с адреса 0x7C00, а затем переведет исполнение на этот адрес и начнет исполнение того кода, который только что загрузила. Вот этот код и называется загрузчиком (bootloader).

Загрузчик загружает ядро по физическому адресу 0x100000. Именно он и используется большинством популярных ядер для x86.

Все процессоры, совместимые с x86, начинают свою работу в примитивном 16-разрядном режиме, которые называют «реальным режимом» (real mode). Загрузчик GRUB переключает процессор в 32-разрядный защищенный режим (protected mode), переводя нижний бит регистра CR0 в единицу. Поэтому ядро начинает загружаться уже в 32-битном защищенном режиме.

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

Что нам понадобится

  • Компьютер, совместимый с x86 (очевидно),
  • Linux,
  • ассемблер NASM,
  • ld (GNU Linker),
  • GRUB.

Входная точка на ассемблере

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

Как сделать так, чтобы ассемблерный код стал стартовой точкой для нашего ядра? Мы используем скрипт для компоновщика (linker), который линкует объектные файлы и создает финальный исполняемый файл ядра (подробнее объясню чуть ниже). В этом скрипте мы напрямую укажем, что хотим, чтобы наш бинарный файл загружался по адресу 0x100000. Это адрес, как я уже писал, по которому загрузчик ожидает увидеть входную точку в ядро.

Вот код на ассемблере.

kernel.asm
bits 32 section .text global start extern kmain start: cli mov esp, stack_space call kmain hlt section .bss resb 8192 stack_space:

Первая инструкция bits 32 - это не ассемблер x86, а директива NASM, сообщающая, что нужно генерировать код для процессора, который будет работать в 32-разрядном режиме. Для нашего примера это не обязательно, но указывать это явно - хорошая практика.

Вторая строка начинает текстовую секцию, также известную как секция кода. Сюда пойдет весь наш код.

global - это еще одна директива NASM, она объявляет символы из нашего кода глобальными. Это позволит компоновщику найти символ start , который и служит нашей точкой входа.

kmain - это функция, которая будет определена в нашем файле kernel.c . extern объявляет, что функция декларирована где-то еще.

Далее идет функция start , которая вызывает kmain и останавливает процессор инструкцией hlt . Прерывания могут будить процессор после hlt , так что сначала мы отключаем прерывания инструкцией cli (clear interrupts).

В идеале мы должны выделить какое-то количество памяти под стек и направить на нее указатель стека (esp). GRUB, кажется, это и так делает за нас, и на этот момент указатель стека уже задан. Однако на всякий случай выделим немного памяти в секции BSS и направим указатель стека на ее начало. Мы используем инструкцию resb - она резервирует память, заданную в байтах. Затем оставляется метка, указывающая на край зарезервированного куска памяти. Прямо перед вызовом kmain указатель стека (esp) направляется на эту область инструкцией mov .

Ядро на C

В файле kernel.asm мы вызвали функцию kmain() . Так что в коде на C исполнение начнется с нее.

kernel.c
void kmain(void) { const char *str = "my first kernel"; char *vidptr = (char*)0xb8000; unsigned int i = 0; unsigned int j = 0; while(j < 80 * 25 * 2) { vidptr[j] = " "; vidptr = 0x07; j = j + 2; } j = 0; while(str[j] != "\0") { vidptr[i] = str[j]; vidptr = 0x07; ++j; i = i + 2; } return; }

Все, что будет делать наше ядро, - очищать экран и выводить строку my first kernel.

Первым делом мы создаем указатель vidptr, который указывает на адрес 0xb8000. В защищенном режиме это начало видеопамяти. Текстовая экранная память - это просто часть адресного пространства. Под экранный ввод-вывод выделен участок памяти, который начинается с адреса 0xb8000, - в него помещается 25 строк по 80 символов ASCII.

Каждый символ в текстовой памяти представлен 16 битами (2 байта), а не 8 битами (1 байтом), к которым мы привыкли. Первый байт - это код символа в ASCII, а второй байт - это attribute-byte . Это определение формата символа, в том числе - его цвет.

Чтобы вывести символ s зеленым по черному, нам нужно поместить s в первый байт видеопамяти, а значение 0x02 - во второй байт. 0 здесь означает черный фон, а 2 - зеленый цвет. Мы будем использовать светло-серый цвет, его код - 0x07.

В первом цикле while программа заполняет пустыми символами с атрибутом 0x07 все 25 строк по 80 символов. Это очистит экран.

Во втором цикле while символы строки my first kernel, оканчивающейся нулевым символом, записываются в видеопамять и каждый символ получает attribute-byte, равный 0x07. Это должно привести к выводу строки.

Компоновка

Теперь мы должны собрать kernel.asm в объектный файл с помощью NASM, а затем при помощи GCC скомпилировать kernel.c в другой объектный файл. Наша задача - слинковать эти объекты в исполняемое ядро, пригодное к загрузке. Для этого потребуется написать для компоновщика (ld) скрипт, который мы будем передавать в качестве аргумента.

link.ld
OUTPUT_FORMAT(elf32-i386) ENTRY(start) SECTIONS { . = 0x100000; .text: { *(.text) } .data: { *(.data) } .bss: { *(.bss) } }

Здесь мы сначала задаем формат (OUTPUT_FORMAT) нашего исполняемого файла как 32-битный ELF (Executable and Linkable Format), стандартный бинарный формат для Unix-образных систем для архитектуры x86.

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

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

В фигурных скобках, которые идут за выражением SECTIONS , точка означает счетчик позиции (location counter). Он автоматически инициализируется значением 0x0 в начале блока SECTIONS , но его можно менять, назначая новое значение.

Ранее я уже писал, что код ядра должен начинаться по адресу 0x100000. Именно поэтому мы и присваиваем счетчику позиции значение 0x100000.

Взгляни на строку.text: { *(.text) } . Звездочкой здесь задается маска, под которую подходит любое название файла. Соответственно, выражение *(.text) означает все входные секции.text во всех входных файлах.

В результате компоновщик сольет все текстовые секции всех объектных файлов в текстовую секцию исполняемого файла и разместит по адресу, указанному в счетчике позиции. Секция кода нашего исполняемого файла будет начинаться по адресу 0x100000.

После того как компоновщик выдаст текстовую секцию, значение счетчика позиции будет 0x100000 плюс размер текстовой секции. Точно так же секции data и bss будут слиты и помещены по адресу, который задан счетчиком позиции.

GRUB и мультизагрузка

Теперь все наши файлы готовы к сборке ядра. Но поскольку мы будем загружать ядро при помощи GRUB , остается еще один шаг.

Существует стандарт для загрузки разных ядер x86 с помощью бутлоадера. Это называется «спецификация мультибута ». GRUB будет загружать только те ядра, которые ей соответствуют.

В соответствии с этой спецификацией ядро может содержать заголовок (Multiboot header) в первых 8 килобайтах. В этом заголовке должно быть прописано три поля:

  • magic - содержит «волшебное» число 0x1BADB002, по которому идентифицируется заголовок;
  • flags - это поле для нас не важно, можно оставить ноль;
  • checksum - контрольная сумма, должна дать ноль, если прибавить ее к полям magic и flags .

Наш файл kernel.asm теперь будет выглядеть следующим образом.

kernel.asm
bits 32 section .text ;multiboot spec align 4 dd 0x1BADB002 ;magic dd 0x00 ;flags dd - (0x1BADB002 + 0x00) ;checksum global start extern kmain start: cli mov esp, stack_space call kmain hlt section .bss resb 8192 stack_space:

Инструкция dd задает двойное слово размером 4 байта.

Собираем ядро

Итак, все готово для того, чтобы создать объектный файл из kernel.asm и kernel.c и слинковать их с применением нашего скрипта. Пишем в консоли:

$ nasm -f elf32 kernel.asm -o kasm.o

По этой команде ассемблер создаст файл kasm.o в формате ELF-32 bit. Теперь настал черед GCC:

$ gcc -m32 -c kernel.c -o kc.o

Параметр -c указывает на то, что файл после компиляции не нужно линковать. Мы это сделаем сами:

$ ld -m elf_i386 -T link.ld -o kernel kasm.o kc.o

Эта команда запустит компоновщик с нашим скриптом и сгенерирует исполняемый файл под названием kernel .

WARNING

Хакингом ядра лучше всего заниматься в виртуалке. Чтобы запустить ядро в QEMU вместо GRUB, используй команду qemu-system-i386 -kernel kernel .

Настраиваем GRUB и запускаем ядро

GRUB требует, чтобы название файла с ядром следовало конвенции kernel-<версия> . Так что переименовываем файл - я назову свой kernel-701 .

Теперь кладем ядро в каталог /boot . На это понадобятся привилегии суперпользователя.

В конфигурационный файл GRUB grub.cfg нужно будет добавить что-то в таком роде:

Title myKernel root (hd0,0) kernel /boot/kernel-701 ro

Не забудь убрать директиву hiddenmenu, если она прописана.

GRUB 2

Чтобы запустить созданное нами ядро в GRUB 2, который по умолчанию поставляется в новых дистрибутивах, твой конфиг должен выглядеть следующим образом:

Menuentry "kernel 701" { set root="hd0,msdos1" multiboot /boot/kernel-701 ro }

Благодарю Рубена Лагуану за это дополнение.

Перезагружай компьютер, и ты должен будешь увидеть свое ядро в списке! А выбрав его, ты увидишь ту самую строку.



Это и есть твое ядро!

Пишем ядро с поддержкой клавиатуры и экрана

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

Мы будем общаться с устройствами ввода-вывода через порты ввода-вывода. По сути, они просто адреса на шине ввода-вывода. Для операций чтения и записи в них существуют специальные процессорные инструкции.

Работа с портами: чтение и вывод

read_port: mov edx, in al, dx ret write_port: mov edx, mov al, out dx, al ret

Доступ к портам ввода-вывода осуществляется при помощи инструкций in и out , входящих в набор x86.

В read_port номер порта передается в качестве аргумента. Когда компилятор вызывает функцию, он кладет все аргументы в стек. Аргумент копируется в регистр edx при помощи указателя на стек. Регистр dx - это нижние 16 бит регистра edx . Инструкция in здесь читает порт, номер которого задан в dx , и кладет результат в al . Регистр al - это нижние 8 бит регистра eax . Возможно, ты помнишь из институтского курса, что значения, возвращаемые функциями, передаются через регистр eax . Таким образом, read_port позволяет нам читать из портов ввода-вывода.

Функция write_port работает схожим образом. Мы принимаем два аргумента: номер порта и данные, которые будут записаны. Инструкция out пишет данные в порт.

Прерывания

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

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

За прерывания в архитектуре x86 отвечает чип под названием Programmable Interrupt Controller (PIC). Он обрабатывает хардверные прерывания и направляет и превращает их в соответствующие системные прерывания.

Когда пользователь что-то делает с устройством, чипу PIC отправляется импульс, называемый запросом на прерывание (Interrupt Request, IRQ). PIC переводит полученное прерывание в системное прерывание и отправляет процессору сообщение о том, что пора остановить то, что он делает. Дальнейшая обработка прерываний - это задача ядра.

Без PIC нам бы пришлось опрашивать все устройства, присутствующие в системе, чтобы посмотреть, не произошло ли событие с участием какого-то из них.

Давай разберем, как это работает в случае с клавиатурой. Клавиатура висит на портах 0x60 и 0x64. Порт 0x60 отдает данные (когда нажата какая-то кнопка), а порт 0x64 передает статус. Однако нам нужно знать, когда конкретно читать эти порты.

Прерывания здесь приходятся как нельзя более кстати. Когда кнопка нажата, клавиатура отправляет PIC сигнал по линии прерываний IRQ1. PIС хранит значение offset , сохраненное во время его инициализации. Он добавляет номер входной линии к этому отступу, чтобы сформировать вектор прерывания. Затем процессор ищет структуру данных, называемую «таблица векторов прерываний» (Interrupt Descriptor Table, IDT), чтобы дать функции - обработчику прерывания адрес, соответствующий его номеру.

Затем код по этому адресу исполняется и обрабатывает прерывание.

Задаем IDT

struct IDT_entry{ unsigned short int offset_lowerbits; unsigned short int selector; unsigned char zero; unsigned char type_attr; unsigned short int offset_higherbits; }; struct IDT_entry IDT; void idt_init(void) { unsigned long keyboard_address; unsigned long idt_address; unsigned long idt_ptr; keyboard_address = (unsigned long)keyboard_handler; IDT.offset_lowerbits = keyboard_address & 0xffff; IDT.selector = 0x08; /* KERNEL_CODE_SEGMENT_OFFSET */ IDT.zero = 0; IDT.type_attr = 0x8e; /* INTERRUPT_GATE */ IDT.offset_higherbits = (keyboard_address & 0xffff0000) >> 16; write_port(0x20 , 0x11); write_port(0xA0 , 0x11); write_port(0x21 , 0x20); write_port(0xA1 , 0x28); write_port(0x21 , 0x00); write_port(0xA1 , 0x00); write_port(0x21 , 0x01); write_port(0xA1 , 0x01); write_port(0x21 , 0xff); write_port(0xA1 , 0xff); idt_address = (unsigned long)IDT ; idt_ptr = (sizeof (struct IDT_entry) * IDT_SIZE) + ((idt_address & 0xffff) << 16); idt_ptr = idt_address >> 16 ; load_idt(idt_ptr); }

IDT - это массив, объединяющий структуры IDT_entry. Мы еще обсудим привязку клавиатурного прерывания к обработчику, а сейчас посмотрим, как работает PIC.

Современные системы x86 имеют два чипа PIC, у каждого восемь входных линий. Будем называть их PIC1 и PIC2. PIC1 получает от IRQ0 до IRQ7, а PIC2 - от IRQ8 до IRQ15. PIC1 использует порт 0x20 для команд и 0x21 для данных, а PIC2 - порт 0xA0 для команд и 0xA1 для данных.

Оба PIC инициализируются восьмибитными словами, которые называются «командные слова инициализации» (Initialization command words, ICW).

В защищенном режиме обоим PIC первым делом нужно отдать команду инициализации ICW1 (0x11). Она сообщает PIC, что нужно ждать еще трех инициализационных слов, которые придут на порт данных.

Эти команды передадут PIC:

  • вектор отступа (ICW2),
  • какие между PIC отношения master/slave (ICW3),
  • дополнительную информацию об окружении (ICW4).

Вторая команда инициализации (ICW2) тоже шлется на вход каждого PIC. Она назначает offset , то есть значение, к которому мы добавляем номер линии, чтобы получить номер прерывания.

PIC разрешают каскадное перенаправление их выводов на вводы друг друга. Это делается при помощи ICW3, и каждый бит представляет каскадный статус для соответствующего IRQ. Сейчас мы не будем использовать каскадное перенаправление и выставим нули.

ICW4 задает дополнительные параметры окружения. Нам нужно определить только нижний бит, чтобы PIC знали, что мы работаем в режиме 80x86.

Та-дам! Теперь PIC проинициализированы.

У каждого PIC есть внутренний восьмибитный регистр, который называется «регистр масок прерываний» (Interrupt Mask Register, IMR). В нем хранится битовая карта линий IRQ, которые идут в PIC. Если бит задан, PIC игнорирует запрос. Это значит, что мы можем включить или выключить определенную линию IRQ, выставив соответствующее значение в 0 или 1.

Чтение из порта данных возвращает значение в регистре IMR, а запись - меняет регистр. В нашем коде после инициализации PIC мы выставляем все биты в единицу, чем деактивируем все линии IRQ. Позднее мы активируем линии, которые соответствуют клавиатурным прерываниям. Но для начала все же выключим!

Если линии IRQ работают, наши PIC могут получать сигналы по IRQ и преобразовывать их в номер прерывания, добавляя офсет. Нам же нужно заполнить IDT таким образом, чтобы номер прерывания, пришедшего с клавиатуры, соответствовал адресу функции-обработчика, которую мы напишем.

На какой номер прерывания нам нужно завязать в IDT обработчик клавиатуры?

Клавиатура использует IRQ1. Это входная линия 1, ее обрабатывает PIC1. Мы проинициализировали PIC1 с офсетом 0x20 (см. ICW2). Чтобы получить номер прерывания, нужно сложить 1 и 0x20, получится 0x21. Значит, адрес обработчика клавиатуры будет завязан в IDT на прерывание 0x21.

Задача сводится к тому, чтобы заполнить IDT для прерывания 0x21. Мы замапим это прерывание на функцию keyboard_handler , которую напишем в ассемблерном файле.

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

В записи IDT нам осталось прописать тип, обозначив таким образом, что все это делается, чтобы отловить прерывание. Еще нам нужно задать офсет сегмента кода ядра. GRUB задает GDT за нас. Каждая запись GDT имеет длину 8 байт, где дескриптор кода ядра - это второй сегмент, так что его офсет составит 0x08 (подробности не влезут в эту статью). Гейт прерывания представлен как 0x8e. Оставшиеся в середине 8 бит заполняем нулями. Таким образом, мы заполним запись IDT, которая соответствует клавиатурному прерыванию.

Когда с маппингом IDT будет покончено, нам надо будет сообщить процессору, где находится IDT. Для этого существует ассемблерная инструкция lidt, она принимает один операнд. Им служит указатель на дескриптор структуры, которая описывает IDT.

С дескриптором никаких сложностей. Он содержит размер IDT в байтах и его адрес. Я использовал массив, чтобы вышло компактнее. Точно так же можно заполнить дескриптор при помощи структуры.

В переменной idr_ptr у нас есть указатель, который мы передаем инструкции lidt в функции load_idt() .

Load_idt: mov edx, lidt sti ret

Дополнительно функция load_idt() возвращает прерывание при использовании инструкции sti .

Заполнив и загрузив IDT, мы можем обратиться к IRQ клавиатуры, используя маску прерывания, о которой мы говорили ранее.

Void kb_init(void) { write_port(0x21 , 0xFD); }

0xFD - это 11111101 - включаем только IRQ1 (клавиатуру).

Функция - обработчик прерывания клавиатуры

Итак, мы успешно привязали прерывания клавиатуры к функции keyboard_handler , создав запись IDT для прерывания 0x21. Эта функция будет вызываться каждый раз, когда ты нажимаешь на какую-нибудь кнопку.

Keyboard_handler: call keyboard_handler_main iretd

Эта функция вызывает другую функцию, написанную на C, и возвращает управление при помощи инструкций класса iret. Мы могли бы тут написать весь наш обработчик, но на C кодить значительно легче, так что перекатываемся туда. Инструкции iret/iretd нужно использовать вместо ret , когда управление возвращается из функции, обрабатывающей прерывание, в программу, выполнение которой было им прервано. Этот класс инструкций поднимает флаговый регистр, который попадает в стек при вызове прерывания.

Void keyboard_handler_main(void) { unsigned char status; char keycode; /* Пишем EOI */ write_port(0x20, 0x20); status = read_port(KEYBOARD_STATUS_PORT); /* Нижний бит статуса будет выставлен, если буфер не пуст */ if (status & 0x01) { keycode = read_port(KEYBOARD_DATA_PORT); if(keycode < 0) return; vidptr = keyboard_map; vidptr = 0x07; } }

Здесь мы сначала даем сигнал EOI (End Of Interrupt, окончание обработки прерывания), записав его в командный порт PIC. Только после этого PIC разрешит дальнейшие запросы на прерывание. Нам нужно читать два порта: порт данных 0x60 и порт команд (он же status port) 0x64.

Первым делом читаем порт 0x64, чтобы получить статус. Если нижний бит статуса - это ноль, значит, буфер пуст и данных для чтения нет. В других случаях мы можем читать порт данных 0x60. Он будет выдавать нам код нажатой клавиши. Каждый код соответствует одной кнопке. Мы используем простой массив символов, заданный в файле keyboard_map.h , чтобы привязать коды к соответствующим символам. Затем символ выводится на экран при помощи той же техники, что мы применяли в первой версии ядра.

Чтобы не усложнять код, я здесь обрабатываю только строчные буквы от a до z и цифры от 0 до 9. Ты с легкостью можешь добавить спецсимволы, Alt, Shift и Caps Lock. Узнать, что клавиша была нажата или отпущена, можно из вывода командного порта и выполнять соответствующее действие. Точно так же можешь привязать любые сочетания клавиш к специальным функциям вроде выключения.

Теперь ты можешь собрать ядро, запустить его на реальной машине или на эмуляторе (QEMU) так же, как и в первой части.

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

И в этой статье я покажу вам, как правильно составить семантическое ядро, чтобы ваш сайт побыстрее вышел в ТОП, а не топтался месяцами на месте. Тут тоже есть свои «секретики».

И прежде чем мы перейдем к составлению СЯ, давайте разберем, что это такое, и к чему мы в итоге должны прийти.

Что такое семантическое ядро простыми словами

Как это ни странно, но семантическое ядро — это обычный excel файл, в котором списком представлены ключевые запросы, по которым вы (или ваш копирайтер) будете писать статьи для сайта.

Вот как, например, выглядит мое семантическое ядро:

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

Для каждого ключевого запроса у меня определена частотность, конкурентность, и придуман «цепляющий» заголовок. Вот примерно такой же файл должен получиться и у вас. Сейчас у меня СЯ состоит из 150 ключевиков. Это значит, что я обеспечен «материалом» минимум на 5 месяцев вперед (если даже буду писать по одной статье в день).

Чуть ниже мы поговорим о том, к чему вам готовиться, если вы вдруг решите заказать сбор семантического ядра у специалистов. Здесь скажу кратко — вам дадут такой же список, но только на тысячи «ключей». Однако, в СЯ важно не количество, а качество. И мы с вами будем ориентироваться именно на это.

Зачем вообще нужно семантическое ядро?

А в самом деле, зачем нам эти мучения? Можно же, в конце концов, просто так писать качественные статьи, и привлекать этим аудиторию, правильно? Да, писать можно, а вот привлекать не получится.

Главная ошибка 90% блогеров — это как раз написание просто качественных статей. Я не шучу, у них реально интересные и полезные материалы. Вот только поисковые системы об этом не знают. Они же не экстрасенсы, а всего лишь роботы. Соответственно они и не ставят вашу статью в ТОП.

Здесь есть еще один тонкий момент с заголовком. Например, у вас есть очень качественная статья на тему «Как правильно вести бизнес в «мордокниге». Там вы очень подробно и профессионально расписываете все про фейсбук. В том числе и то, как там продвигать сообщества. Ваша статья — самая качественная, полезная и интересная в интернете на эту тему. Никто и рядом с вами не валялся. Но вам это все равно не поможет.

Почему качественные статьи вылетают из ТОПа

Представьте, что на ваш сайт зашел не робот, а живой проверяльщик (асессор) с Яндекса. Он понял, что у вас самая классная статья. И рукам поставил вас на первое место в выдаче по запросу «Продвижение сообщества в фейсбук».

Знаете, что произойдет дальше? Вы оттуда все равно очень скоро вылетите. Потому что по вашей статье, даже на первом месте, никто не будет кликать. Люди вводят запрос «Продвижение сообщества в фейсбук», а у вас заголовок — «Как правильно вести бизнес в «мордокниге». Оригинально, свежо, забавно, но… не под запрос. Люди хотят видеть именно то, что они искали, а не ваш креатив.

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

Зато у этих статей будет правильный «релевантный» заголовок — «Продвижение сообщества в фейсбук с нуля» (по шагам, за 5 шагов, от А до Я, бесплатно и пр.) Обидно? Еще бы. Ну так боритесь против несправедливости. Давайте составим грамотное семантическое ядро, чтобы ваши статьи занимали заслуженные первые места.

Еще одна причина начать составлять СЯ прямо сейчас

Есть еще одна вещь, о которой почему-то люди мало задумываются. Вам надо писать статьи часто — как минимум каждую неделю, а лучше 2-3 раза в неделю, чтобы набрать побольше трафика и побыстрее.

Все это знают, но почти никто этого не делает. А все потому, что у них «творческий застой», «никак не могут себя заставить», «просто лень». А на самом деле вся проблема именно в отсутствие конкретного семантического ядра.

Я ввел в поле поиска один из своих базовых ключей — «smm», и Яндекс тут же выдал мне с десяток подсказок, что еще может быть интересно людям, которым интересно «smm». Мне остается только скопировать эти ключи в блокнотик. Потом я точно так же проверю каждый из них, и соберу подсказки еще и по ним.

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

Шаг #2 — Парсинг базовых ключей в SlovoEB

Конечно, если вы напишите статью под запрос «вебинар» или «smm», то чуда не произойдет. Вы никогда не сможете выйти в ТОП по такому широкому запросу. Нам надо разбить базовый ключ на множество мелких запросов по этой теме. И делать это мы будем с помощью специальной программы.

Я использую KeyCollector, но он платный. Вы можете воспользоваться бесплатным аналогом — программой SlovoEB. Скачать её вы можете с официального сайта.

Самое сложное в работе с этой программой — это её правильно настроить. Как правильно настроить и использовать Словоеб я показываю . Но в той статье я упор делаю на подбор ключей для Яндекс-Директа.

А тут давайте по шагам посмотрим особенности использования это программы для составления семантического ядра под SEO.

Сначала создаем новый проект, и называем его по тому широкому ключу, который хотите парсить.

Я обычно даю такое же название проекту, как и мой базовый ключ, чтобы потом не запутаться. И да, предупрежу вас еще от одной ошибки. Не пытайтесь парсить все базовые ключи одновременно. Вам потом будет очень сложно отфильтровать «пустые» ключевые запросы от золотых крупиц. Давайте парсить по одному ключу.

После создания проекта — проводим базовую операцию. То есть мы собственно парсим ключ через Яндекс Вордстат. Для этого нажмите на кнопку «Ворстат» в интерфейсе программы, впишите ваш базовый ключ, и нажмите «Начать сбор».

Для примера, давайте распарсим базовый ключ для моего блога «контекстная реклама».

После этого запустится процесс, и через некоторое время программа нам выдаст результат — до 2000 ключевых запросов, в которых содержится «контекстная реклама».

Так же рядом с каждым запросом будет стоять «грязная» частотность — сколько раз этот ключ (+ его словоформы и хвосты) искали в месяц через яндекс. Но не советую делать никаких выводов из этих цифр.

Шаг #3 — Сбор точной частотности для ключей

Грязная частотность нам ничего не покажет. Если вы будете на неё ориентироваться, то не удивляйтесь потом, когда ваш ключ на 1000 запросов не приносит ни одного клика в месяц.

Нам надо выявить чистую частотность. И для этого мы сначала выделяем все найденные ключи галочками, а потом нажимаем на кнопочку «Яндекс Директ» и снова запускаем процесс. Теперь Словоеб будет нам искать точную частоту запроса в месяц для каждого ключа.

Теперь у нас есть объективная картина — сколько раз какой запрос вводили пользователи интернета за последний месяц. Предлагаю теперь сгруппировать все ключевые запросы по частотности, чтобы с ними было удобнее работать.

Для этого нажимаем на значок «фильтр» в столбце «Частота «!» », и указываем — отфильтровать ключи со значением «меньше или равно 10».

Теперь программа покажет вам только те запросы, частотность которых меньше или равна значению «10». Эти запросы вы можете удалить или скопировать на будущее в другую группу ключевых запросов. Меньше 10 — это очень мало. Писать статьи под эти запросы — пустая трата времени.

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

Шаг #4 — Проверка конкурентности запросов

Все «ключи» в этом мире делятся на 3 типа: высокочастотные (ВЧ), среднечастотные (СЧ), низкочастотные (НЧ). А еще они могут быть выосококонкурнетными (ВК), среднеконкурентными (СК) и низкоконкурентными (НК).

Как правило, ВЧ запросы являются одновременно и ВК. То есть если запрос часто ищут в интернете, то и сайтов, которые хотят по нему продвигаться — очень много. Но это не всегда так, бывают счастливые исключения.

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

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

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

Здесь я проверил запрос «настройка контекстной рекламы в google adwords». Мутаген показал нам, что у этого ключа конкурентность «более 25» — это максимальное значение, которое он показывает. А просмотров у этого запроса всего 11 в месяц. Значит нам он точно не подходит.

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

Мутаген — это платный сервис. Но 10 проверок в сутки вы можете сделать бесплатно. Кроме того, стоимость проверки очень низкая. За все время работы с ним я еще не истратил и 300 рублей.

Кстати, на счет уровня конкуренции. Если у вас молодой сайт, то лучше выбирать запросы с уровнем конкуренции 3-5. А если вы раскручиваетесь уже более года, то можно брать и 10-15.

Кстати, на счет частотности запросов. Нам сейчас надо сделать заключительный шаг, который позволит вам привлекать достаточно много трафика даже по низкочастотным запросам.

Шаг #5 — Сбор «хвостов» для выбранных ключей

Как уже много раз было доказано и проверено, основной объем трафика ваш сайт будет получать не от основных ключей, а от так называемых «хвостов». Это когда человек вводит в поисковую строку странные ключевые запросы, с частотностью 1-2 в месяц, но таких запросов очень много.

Чтобы увидеть «хвост» — просто зайдите в Яндекс и введите выбранный вами ключевой запрос в строку поиска. Вот что вы примерно увидите.

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

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

Например, у нас есть запрос — «Настройка контекстной рекламы». Вот как можно его переформулировать:

  • Настройка = настроить, сделать, создать, запустить, запуск, включить, разместить…
  • Контекстная реклама = контекст, директ, тизер, РСЯ, адвордс, кмс. direct, adwords…

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

Вот так, мы собираем список из 100 — 150 ключевых запросов. Если вы составляете семантическое ядро впервые, то у вас может уйти на это несколько недель.

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

Стоит ли заказывать СЯ у специалистов?

По большому счету специалисты по составлению семантического ядра сделают вам только шаги 1 — 3 из нашей схемы. Иногда, за большую дополнительную плату, сделают и шаги 4-5 — (сбор хвостов и проверку конкурентности запросов).

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

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

И вот тут встает вопрос — а зачем тогда собственно нужны специалисты по СЯ? Согласитесь, распарсить базовый ключ и собрать точные частотности (шаги #1-3) — это совсем не сложно. У вас уйдет на это буквально полчаса времени.

Самое сложное — это именно выбрать ВЧ запросы, у которых низкая конкуренция. А теперь еще, как выясняется, надо ВЧ-НК, на которые вы можете написать хорошую статью. Вот именно это займет у вас 99% времени работы над семантическим ядром. И этого вам не сделает ни один специалист. Ну и стОит ли тратиться на заказ таких услуг?

Когда услуги специалистов по СЯ полезны

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

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

В этом случае — да, спокойно нанимайте специалистов по СЯ. Пусть они вам еще и ТЗ для копирайтеров составят заодно. Но сами понимаете, это тоже будет стоить отдельных денег.

Резюме

Давайте еще раз пробежимся по основным мыслям в статье для закрепления информации.

  • Семантическое ядро — это просто список ключевых запросов, под которые вы будете писать статьи на сайт для продвижения.
  • Необходимо оптимизировать тексты под точные ключевые запросы, иначе ваши даже самые качественные статьи никогда не выйдут в ТОП.
  • СЯ — это как контент-план для социальных сетей. Он помогает вам не впадать в «творческий кризис», и всегда точно знать, о чем вы будете писать завтра, послезавтра и через месяц.
  • Для составления семантического ядра удобно использовать бесплатную программу Словоеб, надо только её .
  • Вот пять шагов составления СЯ: 1 — Подбор базовых ключей; 2 — Парсинг базовых ключей; 3 — Сбор точной частотности для запросов; 4 — Проверка конкурентости ключей; 5 — Сбор «хвостов».
  • Если вы хотите сами писать статьи, то лучше сделайте семантическое ядро самостоятельно, под себя. Специалисты по составлению СЯ не смогут здесь вам помочь.
  • Если вы хотите работать на количество и использовать копирайтеров для написания статей, то вполне можно привлечь делегировать и составления семантического ядра. Лишь бы на все хватило денег.

Надеюсь, эта инструкция была вам полезна. Сохраняйте её в избранное, чтобы не потерять, и поделитесь с друзьями. Не забудьте скачать мою книгу . Там я показываю вам самый быстрый путь с нуля до первого миллиона в интернете (выжимка из личного опыта за 10 лет =)

До скорого!

Ваш Дмитрий Новосёлов

Всем привет! Сегодняшняя статья посвящена тому, как правильно собрать семантическое ядро (СЯ). Если вы занимаетесь SEO-продвижением в Google и Яндекс, хотите увеличить естественный трафик, повысить посещаемость и продажи сайта – этот материал для вас.

Чтобы докопаться до истины, мы изучим тему от «А до Я»:

В заключение рассмотрим общие правила для составления СЯ. Итак, давайте приступим!

Семантическое ядро: что это и какие бывают запросы

Семантическое ядро сайта (известное еще как «смысловое ядро») – это набор слов и словосочетаний, который точно соответствует структуре и тематике ресурса. Проще говоря, это те запросы, по которым пользователи могут найти сайт в Интернете.

Именно правильное семантическое ядро дает поисковым системам и аудитории полную картину об информации, представленной на ресурсе.

Например, если компания продает готовые открытки, то семантическое ядро должно включать такие запросы: «купить открытку», «открытка цена», «открытка на заказ» и подобные. Но не: «как сделать открытку», «открытка своими руками», «самодельные открытки».

Интересно узнать: LSI-копирайтинг. Заменит ли методика SEO?

Классификация запросов по частотности:

  • Высокочастотные запросы (ВЧ) – самые часто «забиваемые» в строку поиска (например, «открытка купить»).
  • Среднечастотные (СЧ) – менее популярные, чем ВЧ ключи, но также интересующие широкую аудиторию («открытка купить цена»).
  • Низкочастотные (НЧ) – словосочетания, которые запрашивают очень редко («купить художественную открытку»).

Важно отметить, что четких, отделяющих ВЧ от СЯ и НЧ, границ не существует, т. к. они варьируются в зависимости от тематики. К примеру, для запроса «оригами», ВЧ показатель 600 тыс. показов в месяц, а для «косметика» – 3,5 млн.

Если обратиться к анатомии ключа, то ВЧ состоит только из тела, СЧ и НЧ дополнены спецификатором и «хвостиком».

При формировании семантического ядра нужно использовать все виды частотности, но в разных пропорциях: минимум ВЧ, максимум НЧ и среднее количество СЧ.

Чтобы стало понятнее, проведем аналогию с деревом. Ствол – это самый главный запрос, на котором все держится. Толстые ветви, расположенные ближе к стволу, – среднечастотные ключи, также пользующиеся популярностью, но не такой, как ВЧ. Тонкие веточки являются низкочастотными словами, которые тоже используются для поиска нужного товара/услуги, но редко.

Разделение ключей по конкурентности:

  • высококонкурентные (ВК);
  • среднеконкурентные (СК);
  • низкоконкурентные (НК).

Данный критерий показывает, сколько веб-ресурсов использует данный запрос для продвижения. Здесь все просто: чем выше конкурентность ключа – тем сложнее пробиться и удержаться с ним в топ-10. Низкоконкурентные также не стоят внимания, так как являются малопулярными в сети. Идеальный вариант – продвигаться по СК запросам, с которыми реально занять первые места в стабильной бизнес-сфере.

Классификация запросов согласно потребностям пользователей:

  • Транзакционные – ключи, связанные с действием (купить, продать, загрузить, скачать).
  • Информационные – для получения каких-либо сведений (что, как, почему, сколько).
  • Навигационные – помогают найти информацию на конкретном ресурсе («купить телефон розетка»).

Остальные ключевики, когда сложно понять намерение пользователя, относят в группу «Прочие» (например, просто слово «открытка» вызывает массу вопросов: «Купить? Сделать? Нарисовать?»).

Зачем сайту нужно семантическое ядро?

Сбор семантического ядра – это кропотливый труд, требующий много времени, сил и терпения. Составить правильное СЯ, которое будет работать, в «два счета» не получится.

Здесь возникает вполне резонный вопрос: стоит ли вообще тратить усилия на подбор семантического ядра для сайта? Если вы хотите, чтобы ваш интернет-проект пользовался популярностью, постоянно увеличивал клиентскую базу и, соответственно, повышал прибыль компании, – ответ однозначный: «ДА».

Потому что сбор семантического ядра помогает:

  • Повысить видимость веб-ресурса . Поисковики Яндекс, Google и другие будут находить ваш сайт по выбранным вами ключам и предлагать его пользователям, которые интересуются данными запросами. Как результат – приток потенциальных клиентов растет, а шансы продать товар/услугу увеличиваются.
  • Избежать ошибок конкурентов. При создании СЯ обязательно выполняется анализ семантического ядра конкурентов, занимающих первый позиции в поисковой выдаче. Благодаря изучению сайтов-лидеров, вы сможете определить, какие запросы помогают им держаться в топе, на какие темы они пишут тексты, какие идеи являются неудачными. В ходе анализа конкурентов также могут возникнуть идеи относительно того, как развить именно свой бизнес.
  • Сделать структуру сайта . Семантическое ядро советуют использовать как «помощника» для создания структуры сайта. Собрав полное СЯ, можно увидеть все запросы, которые вводят пользователи при поиске вашего товара или услуги. Это поможет определиться с основными разделами ресурса. Скорее всего, вам нужно будет сделать такие страницы, о которых изначально вы даже и не думали. Важно понимать, что СЯ только подсказывает интересы пользователей. В идеале, структура сайта соответствует бизнес-сфере и содержит контент, удовлетворяющий потребности аудитории.
  • Исключить переспам. После анализа семантического ядра сайтов-конкурентов из топа, вы сможете установить оптимальную частотность ключевиков. Потому что нет универсального показателя плотности запросов для всех страниц ресурса, а все зависит от тематики и типа страницы, а также языка и самого ключа.

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

Вывод . Без СЯ создать интересный, популярный и рентабельный интернет-проект практически НЕВОЗМОЖНО.

Материал в тему:

Подготовка к сбору семантического ядра для сайта

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

I. Изучить деятельность компании («мозговой штурм»)

Здесь важно выписать ВСЕ услуги и товары, которые предлагает организация. Например, чтобы собрать семантическое ядро для интернет-магазина мебели, можно использовать такие запросы: диван, кресло, кровать, прихожая, тумба + реставрация, ремонт. Здесь главное – ничего не упустить и не добавить лишнего. Только актуальная информация, т.е. если компания не продает пуфы и не ремонтирует мебель, эти запросы не нужны.

Кроме мозгового штурма, можно воспользоваться сервисами Google Analytics и Yandex.Metrika (рис. 1) или личными кабинетами в Google Search Console и Вебмастер Яндекс (рис. 2). Они подскажут, какие запросы наиболее популярны у вашей целевой аудитории. Такая помощь доступна только уже работающим сайтам.

Тексты в помощь:

  • Advego – работает по такому же принципу, как и Istio.com.

  • Lenartools. Работает просто: загружаете страницы, откуда нужно «вытянуть» ключи (max 200), кликаете «Поехали» – и получаете список слов, которые чаще всего используются на ресурсах.

II. Для анализа семантического ядра сайта-конкурента:

  • SEMRUSH – нужно добавить адрес ресурса, выбрать страну, нажать «Start Now» и получить анализ. Сервис платный, но при регистрации предоставляется 10 бесплатных проверок. Подходит также для сбора ключей для собственного бизнес-проекта.

  • Searchmetrics – очень удобный инструмент, но платный и на английском языке, поэтому доступен не всем.

  • SpyWords – сервис для анализа деятельности конкурента: бюджет, поисковый трафик, объявления, запросы. В бесплатном доступе «урезанный» набор функций, а за отдельную плату можно получить детализированную картинку о продвижении интересующей компании.

  • Serpstat – многофункциональная платформа, которая предоставляет отчет о ключевиках, рейтинге, конкурентах в поисковой выдаче Google и Yandex, обратных ссылках и др. Подходит для подбора СЯ и анализа своего ресурса. Единственный минус – полный спектр услуг доступен после оплаты тарифного плана.

  • PR-CY бесплатная программа для анализа семантического ядра, юзабилити, мобильной оптимизации, ссылочной массы и многого другого.

Еще один эффективный способ расширения семантического ядра – использовать синонимы. Пользователи по-разному могут искать один и тот же товар или услугу, поэтому важно включить в СЯ все альтернативные ключи. В поиске синонимов помогут подсказки в Google и Яндекс.

Совет . Если сайт информационный, сначала нужно подобрать запросы, которые являются главными для данного ресурса и по которым планируется продвижение. А затем – сезонные. Например, для веб-проекта о модных тенденциях в одежде ключевыми будут запросы: мода, женская, мужская, детская. А, так сказать, «сезонными» – осень, зима, весна и др.

Как собрать семантическое ядро: подробная инструкция

Определившись со списком запросов для вашего сайта, можно приступать к сбору семантического ядра.

Это можно сделать:

I. БЕСПЛАТНО, используя:

Wordstat Yandex

Яндекс Вордстат – очень популярный онлайн-сервис, с помощью которого можно:

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

Большой недостаток: «выгружать» ключи придется вручную. Но если установить расширение Yandex Wordstat Assistant, работа с семантическим ядром ускорится в разы (актуально для браузера Opera).

Пользоваться просто: нажимаем на «+» возле нужного ключа или кликаем «добавить все». Запросы автоматически перебрасываются в список расширения. После сбора СЯ нужно перенести его в редактор таблиц и обработать. Важные плюсы программы: проверка на дубли, сортировка (алфавит, частотность, добавление), возможность дописать ключи вручную.

Пошаговая инструкция, как пользоваться сервисом, дана в статье: Яндекс. Вордстат (Wordstat): как собрать ключевые запросы?

Google Ads

Планировщик ключевых слов от Гугл, позволяющий бесплатно подобрать семантическое ядро онлайн. Сервис находит ключевики, основываясь на запросах пользователей поисковой системы Google. Для работы необходимо иметь аккаунт в Гугл.

Сервис предлагает:

  • найти новые ключевые слова;
  • посмотреть количество запросов и прогнозы.

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

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

Также возможно запросить отчет (пошаговую инструкцию, как его сделать, показывает программа).

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

К «минусам» сервиса можно отнести следующее: нет точной частотности (только средняя за месяц); не показывает зашифрованные ключи Яндекса и скрывает некоторые из Google. Зато определяет конкурентность и позволяет экспортировать ключевики в формате Excel.

SlovoEB

Это бесплатная версия программы Key Collector, которая обладает массой полезных функций:

  • быстро собирает семантическое ядро из правой и левой колонок WordStat;
  • выполняет пакетный сбор поисковых подсказок;
  • определяет все виды частотности;
  • собирает данные о сезонности;
  • позволяет выполнить пакетный сбор слов и частотность из Rambler.Adstat;
  • вычисляет KEI (коэффициент эффективности ключей).

Для пользования сервисом достаточно внести данные аккаунта в «Директ» (логин и пароль).

Хотите узнать больше – читайте статью: Slovoeb (Словоеб). Азы и инструкция по применению

Букварикс

Простая в использовании и бесплатная программа для сбора семантического ядра, база которой насчитывает более 2 млрд. запросов.

Отличается оперативной работой, а также полезными возможностями:

  • поддерживает большой список слов-исключений (до 10 тыс.);
  • позволяет создавать и применять списки слов непосредственно при формировании выборки;
  • предлагает составлять списки слов умножением нескольких списков (Комбинатор);
  • удаляет дубликаты ключевых слов;
  • показывает частотность (но только «во всем мире», без выбора региона);
  • анализирует домены (один или несколько, сравнивая СЯ ресурсов);
  • экспортируется в формате.csv.

Единственный важный недостаток для установочной программы – большой «вес» (в заархивированном формате ≈ 28 Гб, в распакованном ≈ 100 Гб). Но есть альтернатива – подбор СЯ онлайн.

II. ПЛАТНО с помощью программ:

База Максима Пастухова

Русский сервис, в котором собрана база из более 1,6 миллиарда ключевиков с данными Yandex WordStat и Директ, а также английская, содержащая больше 600 млн слов. Работает онлайн, помогает не только в создании семантического ядра, но также в запуске рекламной кампании в Яндекс.Директ. Самым главным и немаловажным его недостатком можно смело назвать высокую стоимость.

Key Collector (Кей Коллектор)

Пожалуй, самый популярный и удобный инструмент для сбора семантического ядра.

Key Collector:

  • собирает ключевики из правой и левой колонок WordStat Yandex;
  • отсеивает» ненужные запросы с помощью опции «Стоп-слова»;
  • ищет дубли и определяет сезонные ключевики;
  • фильтрует ключи по частотности;
  • выгружается в формате таблицы Excel;
  • находит страницы, релевантные запросу;
  • собирает статистику из: Google Analytics, AdWords и др.

Оценить, как Кей Коллектор выполняет сбор семантического ядра, можно бесплатно в демоверсии.

Rush Analytics

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

Кроме этого, Rush Analytics:

  • ищет подсказки в Youtube, Yandex и Google;
  • предлагает удобный фильтр стоп-слов;
  • проверяет индексацию;
  • определяет частотность;
  • проверяет позиции сайта для десктопов и мобильных;
  • генерирует ТЗ на тексты и т. д.

Отличный инструмент, но платный: без демоверсии и лимитированных бесплатных проверок.

Мутаген

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

Полезная статья: 8 видов текстов для сайта – пишем правильно

Платная программа для сбора семантического ядра, но есть бесплатный лимит – 10 проверок в сутки (доступно после первого пополнения бюджета, хотя бы на 1 руб.). Открыта только для зарегистрированных пользователей.

Keyword Tool

Надежный сервис для создания семантического ядра, который:

  • в бесплатной версии – собирает более 750 ключей для каждого запроса, используя подсказки Google, Youtube Bing, Amazon, eBay, App Store, Instagram;
  • в платной – показывает частотность запросов, конкуренцию, стоимость в AdWords и динамику.

Программа не требует регистрации.

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

Вывод . Если есть возможность – желательно приобрести лицензии на пользование платными программами, так как у них функционал намного шире, чем у бесплатных аналогов. Но для простого сбора СЯ вполне подойдут и «открытые» сервисы.

Кластеризация семантического ядра

Готовое семантическое ядро, как правило, включает множество ключевиков (к примеру, по запросу «мягкая мебель» сервисы выдают несколько тысяч слов). Что делать дальше с таким огромным числом ключевых запросов?

Собранные ключи нужно:

I. Очистить от «мусора», дублей и «пустышек»

Запросы с нулевой частотностью, а также ошибками просто удаляем. Для устранения ключей с ненужными «хвостиками» советую использовать в Excel функцию «Сортировка и фильтр». Что может относиться к мусору? Например, для коммерческого сайта лишними будут такие слова, как: «скачать», «бесплатно» и др. Дубли также можно автоматически убрать в Эксель, воспользовавшись опцией «удалить дубликаты» (см. примеры ниже).

Убираем ключи с нулевой частотностью:

Удаляем ненужные «хвостики»:

Избавляемся от дубликатов:

II. Убрать высококонкурентные запросы

Если вы не хотите, чтобы «путь» в топ растянулся на годы – исключите ВК ключи. С такими ключевыми словами мало будет просто попасть на первые позиции в поисковой выдаче, но еще, что важнее и сложнее, – нужно постараться там удержаться.

Пример, как определить ВК-ключи через планировщик ключевых слов от Google (можно через фильтр оставить только НК и СК):

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

Сделать это можно двумя способами:

1. ПЛАТНО:

  • KeyAssort – кластеризатор семантического ядра, который помогает создать структуру сайта и найти лидеров ниши. Работает на основе поисковиков Yandex и Google. Выполняет разгруппировку 10 тыс. запросов всего за пару минут. Оценить преимущества сервиса можно, скачав демо-версию.

  • SEMparser выполняет автоматическую группировку ключей; создание структуры сайта; определение лидеров; генерацию ТЗ для копирайтеров; парсинг подсветки Yandex; определение геозависимости и «коммерческости» запросов, а также релевантности страниц. Кроме этого, сервис проверяет, насколько текст соответствует топу согласно SEO-параметрам. Как работает: собираете СЯ, сохраняете в формате.xls или.xlsx. Создаете на сервисе новый проект, выбираете регион, загружаете файл с запросами – и через несколько секунд получаете рассортированные по смысловым группам слова.

Кроме этих сервисов, могу посоветовать еще Rush Analytics, с которым уже познакомились выше, и Just-Magic .

Rush Analytics:

Just-Magic:

2. БЕСПЛАТНО:

  • Вручную – с помощью Excel и функции «Сортировка и фильтр». Для этого: устанавливаем фильтр, вводим запрос для группы (к примеру, «купить», «цена»), выделяем список ключей цветом. Далее настраиваем опцию «Пользовательская сортировка» (в «Сортировка по цвету»), перейдя в «сортировать в пределах указанного диапазона». Последний штрих – добавляем названия группам.

Шаг 1

Шаг 2

Шаг 3

Шаг 4

Пример разгруппированного семантического ядра:

  • SEOQUICK – бесплатная онлайн-программа для автоматической кластеризации семантического ядра. Чтобы «разбросать» ключи по группам, достаточно загрузить файл с запросами или добавить их вручную и минутку подождать. Инструмент работает быстро, определяя частотность и тип ключа. Дает возможность удалить лишние группы и экспортировать документ в формате Excel.

  • Keyword Assistant . Сервис работает онлайн по принципу Excel-таблицы, т.е. раскидывать ключевики придется вручную, но занимает это гораздо меньше времени, чем работа в Эксель.

Как кластеризовать семантическое ядро и какие способы использовать – выбирать вам. Я считаю, что так, как нужно именно вам, можно сделать только вручную. Это долго, но эффективно.

После сбора и распределения семантического ядра по разделам можно приступать к написанию текстов для страниц.

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

Общие правила для создания СЯ

Подводя итоги, важно добавить советы, которые помогут собрать правильное семантическое ядро:

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

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

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

Следует регулярно расширять семантическое ядро для увеличения естественного трафика.

И самое важное: все на сайте (от ключей до структуры) должно быть сделано «для людей»!

Вывод . Грамотно собранное семантическое ядро дает реальный шанс быстро продвинуть и удержать сайт на топовых позициях в поисковой выдаче.

Если сомневаетесь, что сможете собрать правильное СЯ, – лучше заказать семантическое ядро для сайта у профессионалов. Это сэкономит силы, время и принесет больше пользы.

Интересно также будет узнать: Как разместить и ускорить индексацию статьи? 5 секретов успеха

На этом все. Надеюсь, материал пригодится вам в работе. Буду благодарна, если поделитесь опытом и оставите комментарии. Спасибо за внимание! До новых онлайн-встреч!

Лучшие статьи по теме