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

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

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

Как ни странно — некоторые положительные результаты всё же были получены. Скрипт стартовал 14 августа 2012 г., запускается по расписанию 3 раза в сутки и обходит за один запуск по 100 профилей (итого — 300 профилей в сутки). В начале работы скрипта исходный файл содержал 2 077 311 профилей, по прошествии трёх месяцев необработанными осталось 2 042 025 — так что работы скрипту хватит надолго. Я специально не ставил в задание слишком много профилей за один раз, чтобы не нагружать сервер. В принципе же ничего не мешает обабатывать и несколько тысяч профилей в сутки.

Результаты работы скрипта следующие: до запуска средняя посещаемость журнала составляла 1 посетитель из ЖЖ в сутки, после запуска — выросла до 4-5 посетителей и довольно стабильно держится на этом уровне, как видно из графиков посещаемости журнала за три месяца работы скрипта.

А вот итоги работы скрипта, которыми со мной любезно поделился Zanzanoza:

1. Я запустил скрипт (на полную, ежедневно) примерно 15 августа. До
этого дня блог посещали примерно 30 зарегестрированных жж-юзеров в
день (в те дни, когда мы ничего не постим, когда постим, примерно
тысяча юзеров);
2. Скрипт ежедневно обходит 4000 юзеров жж;
3. На данный момент в дни, когда я ничего не пишу в жж, посещаемость
все равно около 90-100 человек.

Осталось привести сам код скрипта (можно открыть на отдельной странице) и на всякий случай — файл со списком жж-пользователей. Поскольку скрипт полностью считывает файл и затем начинает его обрабатывать — во время работы он использует порядка 140 Мб оперативной памяти.

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

Для запуска скрипта нужен perl версии не ниже, чем 5.8.8 (под Windows можно использовать Strawberry Perl или аналоги). Код достаточно скопировать и сохранить в текстовый файл, например с именем lj-visitor.pl. Настройки прокомментированы и указываются непосредственно в тексте самого скрипта; запускается скрипт из консоли, без ключей вызова. Например: perl /путь_к_скрипту/lj-visitor.pl.



Category Рубрики: seo, Интернет, Кодинг | Tag Метки: , , , | Comments 31 комментарий »

31 комментарий

  1. Алексей says:

    Я полный нуб, но стараюсь разобраться. Огромное Вам спасибо за работу.

    Я скачал и поставил Strawberry Perl, потом сохранил в блокнотик скрипт и сменил расширение с txt. на pl. В самом блокнотике добавил вместо test и test — логин и пароль для доступа к своему ЖЖ. После этого просто нажимаю на получившийся файл, на секунду появляется какое-то окно и исчезает. Я поглядел в Диспетчере задач, но там никаких посторонних процессов не идёт, значит я что-то сделал не так, можете подсказать, что именно?

    • dimio says:

      Путь к файлу со списком жж-акков прописали в скрипте?
      Запускать надо не щелчком, а из консоли: Пуск — Выполнить — cmd — откроется консоль, в ней уже перейти в папку со скриптом (например cd C:\script) и запускать как perl script.pl.

      • Добрый ДЕНЬ
        никак немогу запустить данный скрипт ,
        в скрипте вместо тест указал логин и пароль В ЖЖ
        а что мне делать дальше ???
        что ещё нужно в скрипте менять помогите пожалуйста !!!!
        прописываю путь в cmd (у меня файл на рабочем столе) а мне пишет— что файл script.pl не является внтуренней или внешней командой, исполняемой программой или пакетным файлом.
        также меня txt на pl но при этом расширение не меняется.
        также не понимаю куда вписывать userov жж
        заранее спасибо большое за ответ

        • dimio says:

          Для начала — установлен ли непосредственно perl?
          Расширение менять не обязательно, можно запустить и так: perl путь_к_скрипту.txt

          #путь к файлу с именами пользователей ЖЖ,
          lj_users_file => ‘./lj-users.txt’,

  2. Здравствуйте!

    Спасибо за замечательный пост.

    Не примите мои строки за спам, это действительно я 🙂

    Осталось 2 дня до окончания окончания марафона для блоггеров, который стартовал 23 сентября 2012 года.

    Хочу лично пригласить Вас поучаствовать в интересном марафоне для блоггеров «Видео-привет моим читателям»:
    [ссылка]..
    Надеюсь на ваш отклик 🙂

  3. Witch_You says:

    Сделать что — нибудь подобное для ЛИРУ блогов (которые на своих доменах) можно? 🙂

    • dimio says:

      Дайте пример хотя бы. Я ли.ру не пользуюсь.

      • Witch_You says:

        Пример. Вот список ([ссылка]) без сортировки «Топ дневников» (на данный момент 50 страниц)…
        Нужно:
        1) Выбрать только те блоги, которые на отдельных доменах (у кого не отдельный домен, блог имеет урл [ссылка]);
        2) Сохранить список блогов на отдельном домене
        Для начала и этого хватит…
        Конечно, будет шикарно, если к каждому «блогу на отдельном домене» будет инфа типа «дата ласт поста. Тиц | PR»… Ну, а если к этому добавить ещё и сортировку – то всё… Это будет бомба 🙂
        P.S. зарегайся в лиру (для теста)… Возможно легче будет эксперементировать…

        • dimio says:

          На первые два пункта положим сделать несложно, не нужно и городить ничего. wget/curl и grep/awk в руки и вперед.
          А можно полюбопытствовать — для чего это нужно?

          • Witch_You says:

            Смешно звучит «вперёд»… Если бы я мог это сделать, меня бы наверное тут не было 🙁
            А нужно это для того, чтобы увеличить «ссылочную массу» на свой блог… Т.Е. я буду заходить только к тем, у кого блог на отдельном домене и комментировать только их… При добавлении комментария, будет добавлена ссылка на мой блог…

            • dimio says:

              Список с отдельными доменами — вот, всего 162 штуки. Получить по ним ТИЦ и PR можно тут (до 50 штук за раз). Там же можно выгрузить результаты в CSV-файл, который потом сортировать как хочется в любых электронных таблицах.

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

              #!/usr/bin/bash
              for i in {0..49}; do
                  echo "page $i";
                  wget -q -O - "http://www.liveinternet.ru/top/blogs/m4/page$i.html" | perl -wlne 'print  $1 if m{http:// ([\d\w\-\.]+\.[\w]{2,4})? /profile/}msx' >> liru-users.txt;
              done
              • Witch_You says:

                Ого… Спасибо! Только вот, «беглый просмотр» показал, что в списке нет, как минимум 2 блогов на отдельном домене (это мои блоги)… Возможно, что база обновляется очень редко (хотя, один из доменов живёт с 2010 года)… Хотя нет… Протестировал… В списке ([ссылка]) я есть… На данный момент на 28999 месте…
                Я понял, в чем была моя ошибка… Во – первых: оказывается вот ([ссылка]) список «всех блогов». Во-вторых: страниц в топе оказывается на много больше чем 50… Вот ласт страница (на данный момент [ссылка])…

  4. Спасибо автору за пост! Давно искал подобный скрипт, и нашёл у Вас! Спасибо ещё раз! Удачи и продолжайте в том же духе!

  5. Andy says:

    Чото пробовал запускать но не понял работает или нет, как это понять и если не работает в чем может быть причина?

    • dimio says:

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

      • Andy says:

        Запускаю под 7 виндой через cmd perl.exe lj-visitor.pl
        В ЖЖ есть последние посетитили, ведь если кто-то заходил на мою страницу должен быть там виден. Пробовал в список пользователей ставить 3 своих других ака и запускать скрипт, но в последних посетителях себя не обнаружил.

        • dimio says:

          Раз ошибок при запуске нет — скрипт отрабатывает. По поводу отображения в статистике — не знаю, там меняли что-то недавно опять, надо проверять вручную, работает ли способ вообще.

  6. Witch_You says:

    dimio, я Вам писал на почту по поводу ЛИРУ… Не могли бы вы ещё раз помочь?

  7. Andy says:

    Как скрипт узнает на каком юзере прервана работа? Например при разрыве сети?

    • dimio says:

      Никак, он вообще не обрабатывает исключений. На то он и «простой». Можно заменить в этой строке carp $response->status_line . "$/" unless $response->is_success; carp на croak — скрипт будет падать при ошибке соединения, при этом файл со списком польз. ЖЖ не перезапишется.

  8. Alx says:

    С момента написания скрипта жж несколько поменялся и есть сейчас скрипт не работает. Для проверки задал в список другой свой жж аккаунт. По моим ощущениям не происходит залогинивание пользователя. Можно как-то проверить произошло залогинивание или нет? К сожалению не знаю Perl, поэтому не могу самостоятельно поправить код.

    • dimio says:

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

      • Alx says:

        Сейчас такая ситуация, что даже если указывать неправильный пароль, то все равно $response->status_line выдает 200 ОК. И мне кажется, что он не логинится просто даже если указывать верные логин-пароль. Вот надо как-то это проверить, не знаю как

Добавить комментарий