Как определить наличие кода Метрики на сайте

Тема в разделе "Решение различных задач по парсингу", создана пользователем GDie, 6 авг 2014.

  1. GDie

    GDie New Member Пользователи

    Регистрация:
    5 авг 2014
    Сообщения:
    14
    Нужно получать основные характеристики сайта — тайтл, кейворды и т.д.
    Это всё без проблем решается через границы.
    Но Кроме всего хочется проверить сайт на наличие Яндекс.Метрики. Если код метрики есть, то заносить в колонку CSV — "Есть", если кода нет, то оставлять колонку пустой.

    Хорошо было бы искать в [DOCSOURCE] "//mc.yandex.ru/metrika/watch.js" и при нахождении записывать в результат "Есть".
     
  2. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.442
    Адрес:
    Latvia
    Назначьте для любой границы:
    Перейдите в "дополнительные настройки границ"
    Для этой границы в поле "поиск-замена" добавьте
     
  3. GDie

    GDie New Member Пользователи

    Регистрация:
    5 авг 2014
    Сообщения:
    14
    А как можно вручную задать несколько границ и несколько таких замен, чтобы собрать все счётчики?
    Но только не через сами границы, а в коде.
     
  4. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Ссылки недоступны для гостей - как задавать границы парсинга
    Поиск-замены прописываются построчно - Ссылки недоступны для гостей
     
  5. GDie

    GDie New Member Пользователи

    Регистрация:
    5 авг 2014
    Сообщения:
    14
    Ну так вопрос в том, чтобы не через границы.
    Если таких счётчиков 2-3, то можно, конечно.
    А если 200 счётчиков?
    Алгоритм: Если находим в тексте этот кусок кода, то выводим 1, если этот, то 2, если этот, то 3
    В результат записываются результаты всех вхождений.
    Пример:
    [FIND(mc.yandex.ru/metrika/watch.js|Метрика ||ga.js|Google_Analytics )][DOCSOURCE][/FIND]
    Результат работы примера, если есть на сайте и метрика и аналитик - Метрика Google_Analytics
     
  6. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Стоит лишь только заглянуть в справку:
    Проверка на наличие слов (вхождений) в тексте и совершение определенных действий ([CHECKENTRY(вхождение 1||вхождение 2)]текст[/CHECKENTRY]) Ссылки недоступны для гостей
     
  7. GDie

    GDie New Member Пользователи

    Регистрация:
    5 авг 2014
    Сообщения:
    14
    Так смотрел...
    Мне нужно проверять не текст, который внутри и сравнивать с ним, а искать совпадения. И если есть совпадения в нём, то выводить в результат не текст, а другое значение.
    Может не разобрался... Как подмену сделать для нескольких значений?

    [CHECKENTRY(mc.yandex.ru/metrika/watch.js)][DOCSOURCE][THENTEXT]Метрика[/CHECKENTRY]
    [CHECKENTRY(ga.js)][DOCSOURCE][THENTEXT]Google_Analytics[/CHECKENTRY]
    Так? Не работает...
     
  8. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Так...
    макрос работает исправно, пожалуйста, не наговаривайте =)

    Убедитесь, что у вас последняя версия программы (в меню - справка - о программе).
    Проанализируйте код документа [DOCSOURCE]
    Найдите ошибку...
     
  9. GDie

    GDie New Member Пользователи

    Регистрация:
    5 авг 2014
    Сообщения:
    14
    Да, всё работает. )
    А то, что [DOCSOURCE] загружается каждый раз не страшно?
     
  10. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Не страшно, уверен, вы не из пугливых =). Обращайтесь.
     

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