Архив блога VadoZ

Сообщения с тегами ‘XRumer’

Впечатления от сапорта Xrumera

28th Январь, 2009

Сегодня Support Xrumera забанил меня на форуме тех поддержки. Выяснение причин показало, что ему не понравилась пара матерных слов употребленных для выражения моего недовольства тем, что сорваны сроки выхода ежемесячных обновлений и полностью отсутствует техподдержка пользователей. Не хочу рассуждать на тему “а что еще можно сказать, если вместо обещанного <не позднее 3-го числа> мы до сих пор не получили январское обновление”… Черт с ним, может действительно на форуме Хрумера сидят не дорвейщики, а барышни-копирайтерши, вдохновленные синонимайзером хрумера :) … Им действительно было-б неприятно читать матерные слова… Но я хотел высказать свое мнение немного о другом - если Support раздает предупреждения и банит пользователей - значит на форуме он присутствует. Если Support присутствует на форуме, то почему он не отвечает на технические вопросы пользователей Хрумера? Я лично за 30 секунд нашел 3 темы с серьезными вопросами от пользователей, на которые уже больше недели никто из поддержки продукта не дает ответа. В теме про сорванный выход обновлений прозвучал вопрос - каким движкам обучаете сейчас Хрумер (чтоб народ мог собрать базы, раз уж обновление задерживается почти на 4 недели) - ответа ноль.

Мой вывод: в обязанности Support-а входит поддержание порядка на форуме. Тех поддержку Хрумера он не осуществляет. Итог: апдейтов нет, техподдержки нет. За что берут абонплату - ХЗ.

P.S.
Недовольство техподдержки в принципе понятно. Но неужели они не понимают, что своими действиями довели пользователей до определенной точки, когда людям нужно выплеснуть негатив. Ну не буду я выплескивать негатив на закрытом форуме Ботмастера - выплесну его на серче, нулледе, юмаксе…. неужели им это пойдет на пользу?

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

XRumer

Буржуи не пройдут

23rd Декабрь, 2008

На различных форумах время от времени всплывает вопрос - как выбрать с огромной базы форумов только русскоязычные? Частично на него ответил dimon799 в своей статье Урок Второй. Будем фильтровать базу. , написанной для конкурса .
Димон предложил выбирать форумы с кодировками KOI-8R WINDOWS-1251 . Весьма разумное предложение, но как-же быть с форумами в кодировке UTF-8 ? На СЕОшных форумах предлагают вспомнить основы программирования и написать распознавалку языков, либо более простой путь – забить. На попытки выспросить более приемлимые пути обижаются и заводят песню про невозможность невозможного в обозримом настоящем. Народ, блин, ну проявите хоть чуток фантазии! Откройте наугад 3 рускоязычных форума… ну например
http://forum.nalog.ru/index.php
http://www.mvideo.ru/phorum/
http://forum.mgimo.ru/index.php
Догадались?
Конечно! В русскоязычных форумах названия разделов обычно состоят из русских слов :). И очень часто встречаются слова типа флейм, курилка, общий, обьявления, реклама. Достаточно прошерстить форумы по методу предложенному dimon799, добавив к кодировкам список слов, часто встречающихся в названиях разделов. Итак для начала выберем форумы с кодировкой UTF-8. используем для этого “Анализатор базы ссылок” и методику описанную dimon799.

Затем собираем список слов, встречающихся в названиях разделов. Уже начали наполнять список? Не торопитесь – ведь у нас в руках 5-я версия хрумера! Именно в ней появилась замечательная опция «Вести лог списков разделов на форумах».

Включаем эту опцию, делаем тестовый прогон нашей базы, смотрим в файл Logs/CategoriesLog id*.txt , выбираем из него русские слова и … тут нас ожидает очередная засада – нам нужен инструмент, корректно работающий с русским языком и UTF-8. Недолгие поиски результата не принесли, поэтому было решено сваять такой инструмент самому. Писалось, как обычно, на коленке пяткой левой ноги… поэтому к инструменту нужен особый подход :).
Изучаем скриншот.

Жмем кнопку Load Url и загружаем список форумов с кодировкой UTF-8. В поле паттерна вводим что-то наподобие

(Курилка|Оффтопик|Юмор|Болталка|Общий|и т.д и т.п)
Синтаксис очень простой - внутри скобок перечисляем слова или словосочетания разделенные вертикальной чертой.
Выставляем кол-во потоков и жмем Parse. Как увидим что инструмент отработал – жмем Save – список русских форумов сохранится в файл c:url.txt . Разумеется, у программы должны быть права на запись в корень диска C.
Скачать сей чудесный программный продукт можно по не менее чудесной гиперссылке. Продукту для работы нужен .NET Framework 2.0 – без него работать не будет.
Вот и все. Как оказалось не так страшен UTF, как его малюют.
Важное замечание – при этой проверке база форумов должна быть приведена к индексу. Сделать это можно Hrefer-om или инструментом «Пост-обработка ссылок».

Людям купившим Xrumer по моей ссылке я не делаю откат в размере 50 долларов… Но могу помочь советами, а это намного дороже денег!

XRumer ,

Крутим белый сайт досками.

5th Декабрь, 2008

Постановка задачи.

Дано:
1) Белый (условно белый ) сайт, который мы хотим монетизировать.
2) Xrumer 5-й серии
Требуется:
Либо трафик – продажа реальных товаров, контекстная реклама и т.д.
Либо пузо – продажа ссылок.
А лучше и того и другого и можно без хлеба (с) Винни-Пух .
Таким макаром наши задачи сводятся к банальным – нагнать посетителей и нарастить пузо.
Для реализации наших замыслов выберем жертв – доски объявлений, благо мод для постинга в них мы уже сделали.

Наращивание пуза

Как Вы помните, при регистрации пользователя в доске мы указываем адрес веб страницы…

У Вас может возникнуть соблазн прогнать ресурс в режиме «Только регистрация» - по аналогии с форумами и сидеть сложа руки ждать прироста пуза, но я бы не рекомендовал так делать и вот почему – посмотрите на эти 2 ресурса форум и доска . Заметили разницу? На форуме есть ссылка , пройдя по которой бот поисковой системы увидит список пользователей и рано или поздно найдет нашего пользователя… у досок такой ссылки нет. Какой выход? Либо постить объявления (тогда в тексте объявления появится ссылка на наш сайт и на наш профиль) либо самому скармливать боту ссылки на созданные профили. Второй путь в принципе не сложный – благо все ссылки на профили в досках WR-Board имеют вид tools.php?event=profile&pname=username, следовательно, имея список ресурсов в которых мы зарегистрировались и зная логин пользователя, мы можем создать список ссылок на профили, которые затем скормить поисковикам, например при помощи «Ускорителя могучего робота Яндекса» -
Какой путь выбрать – дело вкуса. Лично мне проще первый путь, но если какие-то ссылочки не торопятся индексироваться – не грех этот процесс ускорить :).

Нагоняем траф.

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

Несколько слов про «умелый подход» - посмотрите выборочно пару-тройку досок из ссылки приведенной выше. Посмотрели? Так вот ТАК ДЕЛАТЬ КАТЕГОРИЧЕСКИ НЕЛЬЗЯ! Конечно у меня есть тысяча отмазок типа – я не ставил своей целью привлекать траф и вообще это был тестовый прогон…. Но если Вы хотите получать соответствующий выхлоп – потрудитесь подобрать соответствующие вашей тематике НЧ кейворды и использовать систему вариаций при составлении текста объявления. Обратите внимание на то, что в системе вариаций Вы можете использовать не только отдельные слова, но и словосочитания, предложения, фрагменты текста.

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

Дерзайте, и да прибудет с Вами траф!

P.S.
Если у Вас еще нет, Xrumer-а, но Вы уже поняли что он Вам нужен - держите ссылку на сайт разработчика

XRumer ,

Делаем мод для XRumer-а. Часть 4-я, последняя

4th Декабрь, 2008

Пришло время обучить Xrumer находить и заполнять форму подачи объявления.
Смотрим по какому URL находится форма - add.php , отлично, добавляем в xurl соответствующее правило:

AddLinkRule([
0,'add.php'
],URL_TONEWPOST);

Все, Хрумер знает где искать форму. Правда не сложно?
Теперь обучим его заполнять поля формы.

Смотрим исходный код формы:
<form action="add.php?event=add" enctype="multipart/form-data" method="post"><strong>Добавление объявления</strong> Категория: <select class="maxiinput" name="rubrika"> <option style="color: #CD8181;" value="0|||||">Работа и бизнес</option> <option value="71|72|Разное|Прочие мелочи|"> -   Прочие мелочи</option> </select><input name="stime" type="hidden" value="1228399684" /> Тема объявления:<span style="color: #ff0000;">*</span> (не более 60 символов) <input class="maxiinput" maxlength="60" name="zag" /> Текст объявления: <textarea class="maxiinput" style="height: 200px; width: 300px;" name="msg"></textarea> Тип объявления:<span style="color: #ff0000;">*</span> <input name="type" type="radio" value="П" /><strong><span style="color: #ee2200;">П</span></strong>редложение <input name="type" type="radio" value="С" /><strong><span style="color: #1414cd;">С</span></strong>прос Ваше имя: <input name="name" type="hidden" value="testnik" /><strong>testnik</strong> Срок хранения объявления: <select style="FONT-SIZE: 13px" name="days"> <option value="7">7 дней</option> <option value="14">14 дней</option> <option value="30">30 дней</option> <option value="60">60 дней</option> <option value="90">90 дней</option></select><input class="longok" type="submit" value="Сохранить" /> </form>

Как видим нам нужно заполнить следующие поля:
rubrika - выбор рубрики
zag - тема обьявления
msg - текст обьявления
type - тип обьявления
days - срок хранения обьявления
Поле rubrika мы игнорируем – это обычный SELECT и Хрумер сам будет пытаться выбрать значение соответствующее списку приоритетных разделов проекта.
Срок хранения имеет смысл сделать максимально возможным – 90 дней (нужно передать значение 90), а тип объявления – предложение (нужно передать значение П).
Открываем xas.txt и добавляем в него следующие строки:

#type
П
#days
90
#zag
SUBJ1
#msg
MESSAGE

Все! Мод готов!
Если лень идти пошагово - можно скачать готовый мод .

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

Пара советов для желающих довести данный мод до ума:
1) Соберите большую базу, прогоните по ней тестовый проект с включенной системой самообучения – так Вы отловите неизвестные программе поля.
2) При прогоне включайте подробные отчеты – так Вы отловите ресурсы с измененной структурой ссылок.
Что делать с полученным добром Вы уже знаете ;)
Удачи!

XRumer ,

Делаем мод для XRumer-а. Часть 3-я обучаем Хрумер логиниться в досках

3rd Декабрь, 2008

Обучаем Хрумер логиниться в досках.

Привет всем, кто с нами. Продолжаем нашу повесть про обучение Xrumer-a.
Сейчас мы научим логиниться в досках. Сразу скажу, что обычно это не нужно – Xrumer прекрасно поддерживает сессии и большинство досок считает вас залогонеными сразу после регистрации, но, как говорится, случаи бывают разные.
Первым делом обучим XRumer отличать ресурсы где мы уже залогонены, от ресурсов где нам предстоит войти под своим именем. Запускаем любимы браузер, идем в любую доску и логинимся там ручками… Сделали? Что изменилось? Правильно, появилась надпись «Ваш Профиль» - чем не флаг для XRumer-а? Смотрим как эта надпись выглядит в HTML виде и добавляем ее к списку маркеров флага LOGGEDIN (надеюсь Вы еще не забыли, что список флагов состояний программы находится в xmessages.txt). Для версии 5.02 должно получится так:

#<strong>Logged in as:;>Log Out</a>;act=Login&CODE=03;loged in;&action=logout;?action=logout;?logout=true;Ваша регистрация закончена.;вы вошли как:;registration is now complete;you may now begin posting using your new username and password;Ваша регистрация теперь завершена.;Спасибо, Вы зарегистрировались и авторизованы;logout.php;Регистрация завершена. Вход и переадресация...;Вы зашли как <b>;hello, dear <b>;Вы зашли под логином: ;>You are logged on as<br>;>0 messages</a>, 0 are new.<br;index.php?action=logout;>You may now begin posting using your new UserName and Password.<;/ubb/my_profile.;Your registration is complete and you are now logged in;>logout</a>;>log out [ ;>Вы вошли как <A href="javascript://";<p class="home"><b>Вошли как:;<a href="log_off_user.asp";>Ваш Профиль<
LOGGEDIN

Теперь научим XRumer находить форму входа. Форма во всех рассматриваемых досках находится по адресу tools.php?event=login , следовательно нам нужно прописать в файле xurl.txt правило, согласно которому хрумер будет перемещаться на страницу логина.
Добавляем в xurl.txt следующие строки:

AddLinkRule([
0,'tools.php?event=login'
],URL_TOLOGIN);

Следующий этап – заполнение и отправка формы регистрации.
Смотрим HTML код формы:

<form action="tools.php?event=regenter" method="post">
<strong>Вход в систему</strong>
Имя:<input class="miniinput" name="myname" />
Пароль:<input class="miniinput" name="mypassword" type="password" />
<input class="longok" type="submit" value="Войти" />
</form>

Как видим XRumeru нужно заполнить всего 2 поля: myname и mypassword. Добавляем эти поля в файл xas.txt, не забывая, что Хрумер учитывает и вхождение слов в поля.
В итоге xas.txt примет такой вид:

#!mail;email
EMAIL
#url
HOMEPAGE
#login;myname
NICKNAME
#!password
PASSWORD
#gorod;icq;phone;company;about

#rules
1

Может возникнуть вопрос – куда делось поле mypassword? А никуда не делось – Хрумер увидит , что описанное нами в xas.txt имя password входит в mypassword и прекрасно его заполнит.
Проверяем что у нас получилось – включаем режим «Рассылка от ранее зарегистрированного пользователя» и нажимаем кнопочку Тест. Тут нас ожидает неприятный сюрприз - Хрумер грязно выругался фразой “Result: не нашлось формы для отправки; “. Проверяем содержимое папки Debug - видим, что Хрумер таки заходил на страницу логина, но форму чего-то незаполнил… Уж не знаю с чем это связано, но сдается мне именно с этим связаны крики о плохом пробиве в режиме «Рассылка от ранее зарегистрированного пользователя» . Анализ ситуации привел меня к весьма неутешительному выводу – хрумер хочет найти полноценную форму с сабжектом и textarea, и ему абсолютно посрать на то, что мы тут должны всего-то залогониться… У нас нет особого выбора кроме как сказать ему, что на данной страничке эти поля не является жизненно необходимыми. Открываем файл флагов состояний (xmessages.txt) и добавляем признак формы логина (например строку name=mypassword) для флагов FORCE_TEXTAREA и FORCE_SUBJECT.
Получатся такие 2 строки:

#name=mypassword
FORCE_TEXTAREA
#name=mypassword
FORCE_SUBJECT

Перезапускаем XRumer и снова нажимаем кнопочку Тест.
Изучаем папку Debug и радуемся полученному результату.

З.Ы.
не забудьте по окончании теста снять галочку «Рассылка от ранее зарегистрированного пользователя», а то завтра на форуме Ботмастера будет куча гневных постов из разряда “пробив гавно” :-)

XRumer ,

Делаем мод для XRumer-а. Часть 2-я регистрация в ресурсах.

30th Ноябрь, 2008

Пришло время обучить XRumer регистрации в досках. Тут не все так просто. Сначала нам нужно объяснить ему, что ОБЯЗАТЕЛЬНО нужно регистрироваться иначе он будет пытаться постить анонимно… разумеется в настройках XRumer-а есть галочка «Обязательная регистрация + постинг»,

но мы не ищем легких путей :).

Давайте найдем признак, который сможет подсказать XRumer-у, что нужно обязательно зарегистрироваться. Что такое есть уникальное в движке, что может служить признаком? Да что угодно! Хоть кусок ссылки на страницу регистрации! Так и запишем!

Открываем файл xmessages.txt , находим в нем строку REGANYWAY и в конец предыдущей строки добавляем ;event=reg
Для XRumer-а это будет служить подсказкой, что первым делом надо завести тут аккаунт.
Отлично, теперь надо обьяснить ему что для регистрации аккаунта нужно перейти по ссылке tools.php?event=login . За логику перемещения XRumer-а по сайтам отвечает файл xurl.txt, читаем справку:


Синтаксис

AddLinkRule([область_поиска,'строка', необязательный_параметр_логики,
...
], метка_ссылки);

Где:
область поиска - цифровое значение, задающее, где именно производится поиск строки: 0 - ссылка в нижнем регистре, 1 - ссылка как есть в
HTML-коде, 2 - ссылка вместе с анкором в нижнем регистре
строка - строчка, которая должна входить в область поиска, чтобы данное правило выполнялось
необязательный_параметр_логики - здесь может быть прописан или не прописан false; если прописан false, это значит, что строка наоборот НЕ
должна присутствовать в области поиска
метка ссылки - это метка, которой будет помечена данная ссылка если заданное правило выполняется:
URL_TONEWPOST - ссылка на создание нового сообщения / топика
URL_TOREGISTRATION - ссылка на регистрацию


И согласно синтаксису описанному в справке добавляем в него правило:

AddLinkRule([
0,'tools.php?event=reg'
],URL_TOREGISTRATION);

Важный момент – XRumer зверь своенравный и есть у него одна черта не описанная в справке – первое правило файла xurl.txt он игнорирует. Поэтому стоит первым правилом поставить какую-то пустышку, например

AddLinkRule([0,'action=logout'
],'');

Тогда на данном этапе наш xurl.txt примет вид:

AddLinkRule([0,'action=logout'
],'');
AddLinkRule([
0,'tools.php?event=reg'
],URL_TOREGISTRATION);

Следующий этап – обучение полям формы регистрации. Тут все очень просто – смотрим на форму
на страничке http://board.baxonet.com/tools.php?event=reg и понимаем, что нам нужно заполнить поля:

Имя
Пароль
E-mail
Поставить галочку «С правилами ознакомлен»
Ну и конечно-же URL

Остальные по желанию.
Смотрим html код странички , точнее фрагмент отвечающий за вывод формы:

<form action="tools.php?event=reguser" method="post"> <strong>Регистрация</strong> Имя:<span style="color: #ff0000;">*</span><input class="maxiinput" maxlength="25" name="login" /> Пароль:<span style="color: #ff0000;">*</span><input class="maxiinput" maxlength="25" name="password" type="password" /> E-mail:<span style="color: #ff0000;">*</span><input class="maxiinput" maxlength="40" name="email" /> Город:<input class="maxiinput" maxlength="60" name="gorod" /> URL:<input class="maxiinput" maxlength="40" name="url" /> ICQ:<input class="maxiinput" maxlength="15" name="icq" /> Телефон:<input class="maxiinput" maxlength="20" name="phone" /> Организация:<input class="maxiinput" maxlength="50" name="company" /> Коротко о себе:<textarea class="maxiinput" name="about"></textarea> <input name="rules" type="checkbox" />С <strong><a href="tools.php?event=about">правилами</a></strong> ознакомлен <input class="longok" type="submit" value="Зарегистрироваться" /> </form>

Обнаруживаем, что
Имени соответствует поле - login
Паролю - password
E-mail-у - email
галочке «С правилами ознакомлен» - rules
URL – url

Важно! Мы видим, что кроме вышеперечисленных полей есть еще и поля gorod, icq, phone, company, about – нам они не нужны, но если XRumer не будет знать как их заполнять, то форму он не заполнит и не отправит. Поэтому важно собрать все поля из формы, а в файле ассоциаций присвоим им пустое значение.

Все поля собраны, открываем справку по файлу ассоциаций xas.txt:


Синтаксис

#имя_поля1;имя_поля2;…
присваиваемое_значение

Где “имя_поля” - это имя поля формы в HTML (например, в

<input name="login" />

- имя поля это login), а “присваиваемое_значение” - то значение,
которым должны заполяться данные поля:

NICKNAME - никнейм пользователя
PASSWORD - пароль
MESSAGE - текст отправляемого сообщения
EMAIL - адрес электронной почты
SUBJ1 - заголовок топика
HOMEPAGE - домашняя страница
любое другое значение - значение, указанное пользователем


Прописываем правила в соответствии с синтаксисом:

#!mail;email
EMAIL
#url
HOMEPAGE
#login
NICKNAME
#password
PASSWORD
#gorod;icq;phone;company;about

#rules
1

Пояснений, пожалуй, требуют только последние строки. Поле rules у нас фактически чекбокс и приличный браузер должен отослать 1 если этот чекбокс отмечен, соответственно мы прописываем 1 в строке «присваиваемое_значение». Поля gorod, icq, phone, company, about мы решили не заполнять, соответственно оставляем там пустую строку (но заполнить их абсолютно не проблема, кому понадобится - может сделать в рамках закрепления пройденного материала).
Ну и отдельное ВНИМАНИЕ на поле email! Все заметили, что там появилось упоминание !mail ? Это фича XRumer-а , хотя она там и не нужна (по логике), но без нее ничего работать не будет… не пытайтесь это понять, просто запомните !mail; ставить надо полюбому.

Пришло время проверить чему мы там наобучали XRumer.
Создадим простейший тестовый проект – что-то типа этого:

Запускаем хрумер, в поле урла для тестирования вводим http://board.baxonet.com, жмем на кнопку Тест, закрываем хрумер.

Идем в папку Debug ищем там файл вида LAST GET idх.htm , просматриваем его в браузере, если видим надпись типа «Вы успешно зарегистрированы.» , значит все сделали правильно. Если не видим такой надписи – значит где-то допустили ошибку – проверяйте содержимое измененных файлов.
Теперь нам нужно объяснить Хрумеру , что наличие строки «Вы успешно зарегистрированы.» является 100 процентным признаком успешной регистрации. Для начала посмотрим наш файл в виде html - обнаруживаем, что для машины наш признак будет выглядеть так:

>, Вы успешно зарегистрированы. <

Теперь добавляем этот признак в файл xmessages.txt , для этого находим в нем строку
REGISTERED
И к строке находящейся над REGISTERED добавляем

;>, Вы успешно зарегистрированы. <

Все, Хрумер обучен регистрации на досках WR-Board.

Правда просто?

XRumer , ,