1. Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 550+ и мы растем!
    Скрыть объявление

Пресет Определяем CMS для 1000000 доменов за 15 часов 1.0

Пример массового определения движков и демонстрация производительности

  1. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.177
    Симпатии:
    1.691
    В качестве базы для доменов используем топ-миллион доменов по Алексе, базу можно скачать тут:
    Исходные данные:
    • Сервер с 4 ядерным процессором Intel(R) Core(TM) i7 CPU 950 @ 3.07GHz, 8 Гб памяти и каналом 100мбит\с
    • В настройках парсера установлено использование 6 ядер CPU, т.к. процессор поддерживает 8 исполнительных ядер благодаря технологии Hyper-Threading, 2 ядра оставлены для стабильной работы системы
    Скриншот настроек задания:

    [​IMG]

    • Исходный файл с запросами содержит данные в формате <alexa-rank>,<domain>, миллион записей, каждый домен с новой строки. С помощью конструктора запросов разделяем домен и его ранк. Для парсера Rank::CMS необходимо указывать полную ссылку на сайт или страницу, поэтому в формате запроса добавим http://
    • Используем парсер Rank::CMS Rank::CMS с настройками по умолчанию, указываем что парсинг будет производиться без прокси и максимум 3 попытки на запрос
    • Результат будем для удобства сохранять в двух форматах - в файл top-1m-cms.txt будем записывать домен, алекса ранк и название CMS; в папку top-1m/ будем сохранять домены автоматически сортируя имена файлов по названию CMS(т.е. в файле WordPress.txt будут только домены с вордпрессом и так аналогично для всех определившихся CMS)
    • По умолчанию проверка выполняется на все CMS, форумные движки и Wiki-движки
    Результат работы задания:

    [​IMG]

    Немного статистики:
    • Скорость парсинга составила 1100 доменов в минуту
    • Всего определились 301841 из 1000000 доменов как использующие на своей главной странице одну из популярных CMS, форумов или Wiki
    • Определено 126 различных CMS
    • Топ 10 самых популярных CMS, первое значение определяет количество доменов:
    Код:
    209855 WordPress
    23732 Joomla
    22945 Drupal
    6488 TYPO3 CMS
    4917 vBulletin
    3726 1C-Bitrix
    2515 phpBB
    2415 ExpressionEngine
    2022 DataLife Engine
    1928 Microsoft SharePoint
    Код:
    eyJwcmVzZXQiOiJSYW5rIENNUyBBbGV4YSB0b3AtMWtrIiwidmFsdWUiOnsicGFy
    c2VycyI6W1siUmFuazo6Q01TIiwiZGVmYXVsdCIseyJ0eXBlIjoib3ZlcnJpZGUi
    LCJpZCI6InVzZXByb3h5IiwidmFsdWUiOmZhbHNlfSx7InR5cGUiOiJvdmVycmlk
    ZSIsImlkIjoicHJveHlyZXRyaWVzIiwidmFsdWUiOiIzIn1dXSwicmVzdWx0c0Zv
    cm1hdCI6IiRxdWVyeTskcXVlcnkuYWxleGE7JHAxLmNtc1xcbiIsInJlc3VsdHNT
    YXZlVG8iOiJmaWxlIiwicmVzdWx0c0ZpbGVOYW1lIjoidG9wLTFtLWNtcy50eHQi
    LCJhZGRpdGlvbmFsRm9ybWF0cyI6W1sidG9wLTFtLyR7cDEuY21zfS50eHQiLCIk
    cXVlcnlcXG4iXV0sInJlc3VsdHNVbmlxdWUiOiJubyIsInF1ZXJ5Rm9ybWF0Ijoi
    aHR0cDovLyRxdWVyeSIsInVuaXF1ZVF1ZXJpZXMiOmZhbHNlLCJzYXZlRmFpbGVk
    UXVlcmllcyI6ZmFsc2UsImRvTG9nIjoibm8iLCJrZWVwVW5pcXVlIjoiTm8iLCJt
    b3JlT3B0aW9ucyI6ZmFsc2UsInJlc3VsdHNQcmVwZW5kIjoiIiwicmVzdWx0c0Fw
    cGVuZCI6IiIsInF1ZXJ5QnVpbGRlcnMiOlt7InNvdXJjZSI6InF1ZXJ5IiwidHlw
    ZSI6InN0cmluZ1NwbGl0Iiwic2VwYXJhdG9yIjoiLCIsInRvIjpbImFsZXhhIiwi
    cXVlcnkiXX1dLCJyZXN1bHRzQnVpbGRlcnMiOltdLCJjb25maWdPdmVycmlkZXMi
    OltdfX0=

    Файлы результатов:
    • Файл с исходными доменами, Алекса ранк и определившейся CMS, top-1m-cms.txt 37Мб
    • Архив с отсортированными по CMS файлами, top-1m.zip 7.6Мб

    Значительно увеличить скорость парсинга можно путем уменьшения количества проверяемых CMS, на скриншоте пример задания в котором проверяется только WordPress, как видно скорость увеличилась более чем в 8 раз, при этом ресурсов сервера хватает для дальнейшего увеличения потоков. Такое задание выполнится всего за 2 часа

    [​IMG]
     
    #1 Forbidden, 27 сен 2014
    Последнее редактирование: 27 сен 2014
    7make, sydoow, relay и 2 другим нравится это.
  2. high_skill

    high_skill A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    25 июн 2013
    Сообщения:
    61
    Симпатии:
    7
    это ваш ПК или дедик ? если сервер какая там ОС стояла? то есть дистр дебиан центос убунту?

    спасибо
     
  3. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.177
    Симпатии:
    1.691
    дедик, CentOS 5, но дистрибутив не имеет значения
     
  4. high_skill

    high_skill A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    25 июн 2013
    Сообщения:
    61
    Симпатии:
    7
    Используем парсер [​IMG] Rank::CMS с настройками по умолчанию, указываем что парсинг будет производиться без прокси

    а абуз на сервер не будет ? что IP дедика где запущен якобы чекает ссылки ?

    или этого не будет так как идет распозн. по признакам а не прямое обращение к /site.com/admin.php (DLE example)


    еще интересно почему отключены соксы ? ведь скорость будет высокой?
     
  5. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.177
    Симпатии:
    1.691
    зависит от адекватности хостера, на самом деле сейчас десятки тысяч поисковых ботов, и никто их не абузит
    в данном случае при проверки разных доменов каждый сайт получает всего по одному запросу, если многопоточно обрабатывать множество ссылок с одного сайта то лучше использовать прокси

    с чего такие выводы? без прокси скорость всегда выше
     
  6. coffee

    coffee A-Parser Pro License
    A-Parser Pro

    Регистрация:
    27 сен 2012
    Сообщения:
    33
    Симпатии:
    24
    пропиши юзер агент Google Bot
     
  7. LmPopo

    LmPopo A-Parser Pro License
    A-Parser Pro

    Регистрация:
    22 янв 2013
    Сообщения:
    82
    Симпатии:
    26
    И ip будет, как мой, занесён в блек листы - Fake Google Bot :)
     
  8. Bran

    Bran A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    31 авг 2013
    Сообщения:
    32
    Симпатии:
    3
    Forbidden, пара вопросов:

    1 - Можно ли чекнуть не только на cms, но и на все остальное? (сервер, фреймворки, статистики и тд)

    2 - А не подскажешь, как сделать так чтоб сортировка происходила так:
    ${p1.cms}/{доменая зона}.txt
    Те создаются папки, соответствующие определенной cms, в них уже идет разбивка по доменным зонам
     
  9. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.177
    Симпатии:
    1.691
    а в чем проблема? что чекать выбирается в настройках Check list парсера Rank::CMS

    [​IMG]

    вторым конструктором запросов выделяем зону и используем её в формате имена файла
     
    Bran нравится это.
  10. Bran

    Bran A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    31 авг 2013
    Сообщения:
    32
    Симпатии:
    3
    2 - Спасибо!
    Я-то выбрал, а как вывести выбранные? Например, тип веб сервера... Тут только переменную cms вижу
    Код:
    {
       "info" : {
          "success" : 1,
          "retries" : 1,
          "stats" : "proxiesUsed: 1\nqueries: 1\nrequests: 1\nretries: 1\nsuccess: 1"
       },
       "cms" : "XenForo",
       "query" : {
          "first" : "http://a-parser.com/",
          "lvl" : 0,
          "query" : "http://a-parser.com/",
          "queryUid" : 0,
          "orig" : "http://a-parser.com/"
       },
       "data" : "none"
    }
     
  11. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.177
    Симпатии:
    1.691
    это откуда вывод? есть массив $list с элементами $cms и $cat:
    [​IMG]
     
  12. Malchishka

    Malchishka A-Parser Pro License
    A-Parser Pro

    Регистрация:
    13 сен 2013
    Сообщения:
    42
    Симпатии:
    0
    Мне нужно определить из моего списка нужную CMS, что-то у меня не получается это сделать. Пользовался поиском, но недавнее обновление сделало старые сообщения не актуальными для этого парсера, пытался играться с предложенными тут настройками, но также всё тщетно, подскажите что я не правильно задал.
    [​IMG]
    [​IMG]
    [​IMG]
     
  13. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.177
    Симпатии:
    1.691
    Ошибка Some error никак не связана с настройками задания, проверь свой IP в Members Area
     
    Malchishka нравится это.
  14. BlackAlex

    BlackAlex A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    30 янв 2013
    Сообщения:
    23
    Симпатии:
    21
    а если мне нужно отобрать только одну CMS Wordpress (на остальные тратить время не нужно)

    не пойму как изменить?

    [​IMG]

    вот здесь пробую нажимать но чет не нажимается..

    или как сделать отбор только одной цмс?
     
  15. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.177
    Симпатии:
    1.691
    должно нажиматься, попробуй перезагрузить интерфейс(F5)
    если проблема сохранится - напиши мне по любому контакту http://a-parser.com/pages/support/ с тимвьювером
     
  16. gerbill

    gerbill A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    8 авг 2013
    Сообщения:
    20
    Симпатии:
    0
    Крутой таск, спасибо!

    А как можно доработать задание чтобы список доменов в файлах был отсортирован по PR или алекса ранку?

    Примерно так:

    5 - http://joomladomain1.com
    4- http://joomladomain2.com
    4- http://joomladomain3.com
    3- http://joomladomain4.com
    1- http://joomladomain5.com
    0- http://joomladomain6.com

    где цифры в начале строки это значение PR данного домена.
     
  17. coffee

    coffee A-Parser Pro License
    A-Parser Pro

    Регистрация:
    27 сен 2012
    Сообщения:
    33
    Симпатии:
    24
    вроде нельзя , exel юзаю
     
  18. Support

    Support Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    16 мар 2012
    Сообщения:
    2.663
    Симпатии:
    1.620
    Добрый день.
    К сожалению, на данный момент возможность отсортировать таким образом данные в файле результатов отсутствует. Но, как вариант, можно использовать сохранение результатов в разных файлах. Для данного примера можно сохранять все домены с одинаковым PR в одном файле: для этого необходимо задать имя файла результатов следующим образом: pr/${p1.pr}.txt
    В итоге получим папку pr, и в ней файлы с именами в виде индексов PR.
     
    Sobesednic нравится это.
  19. gerbill

    gerbill A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    8 авг 2013
    Сообщения:
    20
    Симпатии:
    0
    мне бы еще рассортировать по CMS

    Как посоветовал coffee, можно использовать эксель. Тогда мне бы к тому что я уже получаю на выходе (8 файлов со ссылками на сайты на разных CMS), но чтобы рядом с каждой ссылкой был PR сайта, или алекса ранк. Только в отличии от примера мне нужно было бы сохранять файлы не в txt, а в csv наверно, чтобы в экселе оно по ячейкам открылось и я бы столбец PR или алекса ранков отсортировал бы

    PS: кстати еще подумал - парсер Google::РR смотрит PR ссылки или PR домена (т.е. главной страницы домена второго уровня). Было бы логично смотреть PR главной страницы домена, т.к. у обычных страниц как правило нет PR или он существенно ниже и не даст представления о серьезности сайта
     
  20. Support

    Support Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    16 мар 2012
    Сообщения:
    2.663
    Симпатии:
    1.620
    Похожим образом сортируете и по CMS: $p2.cms/${p1.pr}.txt
    Получим папки с названиями движков, а в них файлы с индексами в именах и содержащие ссылки внутри.
    Чтобы парсить PR для главной страницы домена, необходимо воспользоваться в Конструкторе запросов функцией Extract domain, и подставлять полученный результат в парсер PR.
     

Поделиться этой страницей