Очень давно подумывал о написании чего подобного, простого и незамысловатого. Конечно есть тот же прекрасный и удивительный
Key Collector, но для меня это слишком наворочено. Встречал ещё
Li Parser, он вроде даже бесплатный или там урезанная демка? В общем, у вас всегда есть выбор, а я остановился на своём LiKw - PHP-скрипт парсера ключевых слов с LiveInternet.
Принцип работы LiKw я позаимствовал у Teimos'а (ссылку на блог не даю, т.к. он заражён вирусом). Если вас заинтересовал прототип, скачать его можно
тут. Мой вариант уложился в один класс и один файл likw.php. К тому же скрипт парсит ключевые слова в несколько заходов. С одной стороны, так приходится делать несколько подключений к серверу LiveInternet. С другой, скрипт не виснет из-за перегруза и постепенно наполняет файлик ключевыми словами. Работа скрипта выглядит следующим образом:
Как вы видите, придётся потыкать ссылочку Next Page до тех пор пока она не исчезнет. Ко всему прочему, я отказался от веб-интерфейса по вводу ключевых опций для работы скрипта, так что придётся прописать их в конце самого файла likw.php.
- $page = isset($_GET['page']) ? (int) $_GET['page'] : 1;
- $likw = new likw();
- $likw->set_sitename('http://sitename.ru/');
- if ( $page==1 ) $likw->set_password('12345');
- $likw->set_filename('sitename.txt');
- $likw->parse($page);
- $likw->the_progress();
- $likw->the_nextpage();
- $likw->close();
Разберём этот пример по строкам:
- На первой строке мы считывает параметр page (страница), переданный скрипту методом GET.
- Инициализируем класс likw и создаём одноимённую переменную объекта.
- Используя функцию класса set_sitename(), задаём адрес сайта без www.
- Если ваша статистика по поисковым фразам закрыта паролем, придётся его указать. Для этого используется функция класса set_password(). Скрипт автоматически производит авторизацию. Для того чтоб не выполнять авторизацию при каждом обращении к скрипту, я ввёл условие - производить авторизацию только если $page==1. Если же вам стрёмно указывать пароль, вы можете просто временно открыть доступ к нужным данным и удалить соответствующую строку в коде.
- Функция класса set_filename() позволяет указать путь и имя файла в который будут добавляться ключевые слова. Именно добавляться! В конец файла. По умолчанию, значение имени файла формируется по адресу сайта и мы получим, например: sitename_ru.txt. Так что эту опцию можно и не использовать.
- Функция класса parse() производит обработку данных и добавление ключевых слов в файл. Её параметром является номер страницы доступный по адресу: http://www.liveinternet.ru/stat/[sitename.ru]/queries.html?period=month&per_page=100;page=[номер страницы]. Обращаю ваше внимание на то, что берутся данные за последний месяц, а разбивка идёт по 100 ключевых слов на странице.
- Функции класса the_progress() выодит сообщение о выполненном действии, например: On page 12 recived 100 keywords.
- Функция класса the_nextpage() выводит ссылку на Next Page, адрес которой выглядит, например так: ?page=2 - т.е. вызывается тот же likw.php, но уже с соответствующим параметром, который передаётся через GET функции класса parse().
- Осталось лишь закрыть сооединение, использую функцию класса close().
Как вы видите, возможности моего класса достаточно обширны и вы можете экспериментировать с ним используя так и эдак.
Появилась чуть исправленная версия LiKw, которая позволяет уменьшить количество запросов авторизации, бесплатно скачать её можно
тут.
P.S. Key Collector - видео обзор
Click to view