суббота, 16 июля 2011 г.

Делаем модификацию для LiveStreet

Я хочу вам показать возможности Xrumer`a, а точней как его заточить под определенные ресурсы или движки. Кто не знает Xrumer можно приобрести на официальном сайте BotmasterRu.Com
Перед нами стоит задача автоматизировать регистрацию и постинг сообщений в блоги на движке LiveStreet.
Для начала надо сделать  копию папки с хрумером.
Делаем авторегисратор
Для примера я взял первый попавшийся сайт на LiveStreet  это http://argadgets.ru/
Заходим на сайт.
Смотрим, что надо сделать хрумеру.
Перейти по ссылке регистрация, заполнить форму, скачать капчу и нажать кнопку регистрация.
Редактируем файл xurl.txt Данный файл задаёт логику "следования" программы по ресурсу (нахождение ссылки на просмотр раздела форума, создания топика / сообщения, регистрацию и т.п.)
Для этого переходим в браузере по ссылке зарегистрироваться и смотрим адрес ссылки ведущую регистрацию
http://argadgets.ru/registration/
Т-е нам надо чтобы хрумер переходил по ссылки содержащую слово registration.
 Для этого открываем файл
xurl.txt   (он находится в папке с хрумером), очищаем его содержимое(Зачем! Ответ: т-к хрумер заточен в основном под форумы, то он в первую очередь будет искать форум, а если он его не найдет, только тогда он будет переходить на нужную нам ссылку(а это лишний трафик и лишнее время обработки сайта) и тут есть два варианта очистить файл или вставить правило после запрещающих правил), вставляем вот такое правило
1 это ссылка как есть в HTML-коде.
AddLinkRule([1,' registration'], URL_TOREGISTRATION);
Registration признак ссылки ведущую на регистрацию.
URL_TOREGISTRATION  - это как хрумер должен поступить с этой ссылкой, в нашем случае это ссылка на регистрацию.
Сохраняем файл.
Редактируем файл xas.txt данный файл отвечает за заполнения полей форм. Очищаем его содержимое.
Открываем исходный код страницы и смотрим код формы регистрации

<form action="http://argadgets.ru/registration/" method="POST">
                               <h2>Регистрация</h2>

                              

                               <p><label>Логин<br />
                               <input type="text" name="login" value="" class="input-wide" /><br />
                               <span class="note">Может состоять только из букв (A-Z a-z), цифр (0-9). Знак подчеркивания (_) лучше не использовать. Длина логина не может быть меньше 3 и больше 30 символов.</span></label></p>

                               <p><label>Электропочта<br />
                               <input type="text" name="mail" value="" class="input-wide" /><br />
                               <span class="note">Для проверки регистрации и в целях безопасности нам нужен адрес вашей электропочты.</span></label></p>

                               <p><label>Пароль<br />
                               <input type="password" name="password" value="" class="input-wide" /><br />
                               <span class="note">Должен содержать не менее 5 символов и не может совпадать с логином. Не используйте простые пароли, будьте разумны.</span></label></p>

                               <p><label>Повторите пароль<br />
                               <input type="password" value="" id="repass" name="password_confirm" class="input-wide" /></label></p>

                               Введите цифры и буквы<br />
                               <img src="http://argadgets.ru/engine/lib/external/kcaptcha/index.php?PHPSESSID=fa2153fa0705d68e6ee03be777553ff5" onclick="this.src='http://argadgets.ru/engine/lib/external/kcaptcha/index.php?PHPSESSID=fa2153fa0705d68e6ee03be777553ff5&n='+Math.random();" />

                               <p><input type="text" name="captcha" value="" maxlength="3" class="input-100" /></p>

                              

                               <input type="submit" name="submit_register" value="Зарегистрироваться" />
                </form>
Заполняем xas.txt Синтаксис файла можно прочитать в справке.(Справку переписывать не буду)


#login
NICKNAME
#mail
EMAIL
#!pass
PASSWORD
#captcha
SECRETCODE
Сохраняем файл
Редактируем файл DeCaptcha\default.mask.txt Он отвечает за поведение XRumer-а при обнаружении ссылок на изображения (капчи). Прописываем в конец файла следующее содержимое, можно отредактировать последнее правило

[Include] [inLink]kcaptcha[/]
[inForm]captcha[/]
[/]
Редактируем xmessages.txt Очищаем его содержимое кроме флага FORUM
Укажем, что это форма регистрации. Для этого берем часть кода из формы регистрации и прописываем к флагу RFORM

#<input type="submit" name="submit_register" value="Зарегистрироваться" />
RFORM
Теперь пробуем зарегистрироваться на сайте.  Так требуется активация учетной записи. Сделаем чтобы хрумер писал это в отчете, для этого открываем исходный код страницы и находим сообщение об успешной регистрации

<h2>
Активация аккаунта</h2>
Вы почти зарегистрировались, осталось только активировать аккаунт. Инструкции по активации отправлены по электронной почте на адрес, указанный при регистрации
Прописываем часть текста к флагу ACTIVATION
Получиться вот так

#Инструкции по активации отправлены по электронной почте
ACTIVATION
Проверка
Запускаем хрумер, включаем режим только регистрация, режим распознавания капчи полуручной. Заполняем в проекте все необходимые поля.
Вставляем адрес сайта в поле и нажимаем кнопку тест. Хрумер успешно зарегистрировался, но требуется активация аккуанта.
Теперь обучим его чтобы он находил ссылки активации в письме
Редактируем файл xpop.txt
Ссылка активации выглядит так
http://argadgets.ru/registration/activate/f6956d2e8cc1c517f1720496e6b0287f/
Шаблон будет вот такой

http://[...]/registration/activate/[...]
И прописываем шаблон в секцию [LINKNEEDS].
В настройках скачивания почты установите скачивать все письма без фильтрации по заголовку.
Обучаем хрумер для постинга сообщений в блоги
Смотрим какая задача стоим перед хрумером
Нажать ссылку войти, заполнить форму входа на сайт, Нажать ссылку написать, заполнить форму отправки сообщения.
Опять редактируем файл xurl.txt
Но на этот раз туда прописываем ссылку для входа на сайт
Ссылка выглядит вот так
http://argadgets.ru/login
Правило значит будет вот такое

AddLinkRule([1,'login'
],URL_TOLOGIN);
Сразу пропишем ссылку на создание нового сообщений.
Ссылка выглядит вот так
http://argadgets.ru/topic/add/
Правило значит будет вот такое

AddLinkRule([1,'topic/add'
],URL_TONEWPOST);
Проверяем имена полей для входа на сайт

<p>
<label>Логин или эл. почта:

<input type="text" class="input-text" name="login" id="login-input"/></label></p>

<p>
<label>Пароль:

<input type="password" name="password" class="input-text" /></label></p>
Они в xas.txt у нас уже прописаны.
Прописываем имена полей для создание нового сообщения.

#topic_title
SUBJ1
#topic_text
MESSAGE
#topic_tags
SUBJ2
Сохраняем файл. Запускаем хрумер. Включаем режим рассылка от ранее зарегистрированного пользователя
И нажимаем кнопку тест.
Переходим по ссылки и видим что хрумер оставил наш пост, что и требовалось сделать.
Но это мы сделали только наброски.
На самом деле ещё много работы. Надо прописать все варианты возможных ошибок при регистрации, отправки сообщения. Например данный логин уже занят, неверно введена капча, данный email запрещен для регистрации и т. Д.
И опять же мы сделали это для одного сайта. На других сайтах могут отличаться адрес отправки сообщения, при регистрации могут стоять дополнительный текстовые вопросы, могут различаться имена полей, различаться ответы на успешную регистрацию и т д.
Т-е надо проработать так пару десятков сайтов,  потом пройтись  по небольшой базе и анализировать, почему хрумер не смог зарегистрироваться(отправить сообщение) на том или ином сайте.
Кому лень делать самому, вот готовые файлы Скачать
Кому что то не понятно, ниже видео создания этой модификации.
Меня всегда можно найти на форуме.

3 комментария:

  1. привет почему файл удален ?

    ОтветитьУдалить
  2. Здравствуйте.

    Искал Вас на форуме. Не смог найти. Как с Вами можно связаться?

    С уважением.

    ОтветитьУдалить
    Ответы
    1. Логин на форуме Филип
      ICQ 78-о9-о5

      Удалить