Главная -> Статьи -> SEO-софт своими руками

SEO-софт своими руками

SEO Soft

Сегодня я решил написать первую часть эпического сериала "SEO-софт своими руками" - вступление

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


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

МЕТОДЫ

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


В данном случае GET - это имя метода запроса. Когда сервер получает запрос GET, он понимает, что наше приложение запрашивает от него некую HTML-страницу и ждет ответа в виде исходного кода этой самой страницы. На самом деле, интернет-страницы - это просто текстовые документы, созданные по определенным правилам (с использованием гипертекстового языка разметки HTML - HyperText Markup Language). Ваш браузер получает в ответ на запрос именно эти самые строки текста и ничего более. Основная задача браузера - привести этот текст в тот вид, который мы привыкли видеть: цветные картинки, ссылки, веб-формы, видео- и флэшролики и прочее. Браузер работает с так называемой DOM-моделью документа (совокупность тегов), из которой и строит привычный нам вид странички.

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

Итак, GET-запрос в большинстве случаев означает, что клиент просит сервер предоставить исходный код некоторой страницы.

Атрибут action задает как раз имя скрипта, которому будут отправлены данные. Таким образом, мы имеем запрос по адресу myfreehosting.ru/myscript.php с передачей параметров name и login.

Кроме ссылок и кнопок, надо отдать дань прогрессу и модным тенденциям, нас поджидают другие, более страшные опасности - это клиентские скрипты, в 90% случаев - JavaScript. JS тоже умеет отправлять запросы. Вы наверняка встречались с тем, что при вводе логина на какой-либо сайт при регистрации вам сразу же выдается предупреждение, свободен ли он. Как это происходит? Очень просто. На странице содержится JS-код, который втихую делает запрос на некий скрипт, отправляя вводимый вами логин и получает ответ, занят ли он.

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


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

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

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

Вот как выглядит главное окно программы. Страшно? На самом деле ничего страшного нет. В главном меню программы жмем Action->Start->Select running process, выбираем процесс вашего браузера и нажимаем ОК.

Теперь самое интересное. Переходим браузером на страницу ya.ru и снова заглядываем в нашу программу.


Окно поменялось. Теперь мы видим вот что:


Цифрами я отметил наиболее интересующие нас моменты.


Подобрать заказ со скидкой