1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 2600+ и мы растем!
    Скрыть объявление

Проверка строки из входящего файла на предмет наличия одного из ключей

Тема в разделе "Техническая поддержка", создана пользователем igorus, 7 июн 2017.

  1. igorus

    igorus A-Parser Pro License
    A-Parser Pro

    Регистрация:
    15 май 2017
    Сообщения:
    4
    Симпатии:
    2
    Всем привет!

    Подскажите, можно ли при помощи регулярного выражения проверить строку из входящего файла на предмет наличия одного из ключей?
    Если конкретней, то задача такова:

    Есть файл с большим количеством URL адресов.
    Нужно вытянуть домен верхнего уровня (такой функционал есть)
    Потом проверить домен на вхождение ключа и только потом, если ключ присутствует, пустить дальше это query в работу.

    Заранее спасибо.
     
  2. Support

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

    Регистрация:
    16 мар 2012
    Сообщения:
    4.389
    Симпатии:
    2.112
    Добрый день.
    В А-Парсере нет возможности пропускать запросы. Т.е. запрос однозначно будет выполнен и обработан, но с помощью фильтров можно просто не выводить по нему результат.
    Таким образом решение будет примерно такое:
    - Конструктором запросов получаете Top domain
    - парсер делает запрос
    - фильтром проверяется условие (вхождение ключа) и в зависимости от результата выводится результат
    Детальнее о фильтрах: https://a-parser.com/wiki/filter/
     
  3. igorus

    igorus A-Parser Pro License
    A-Parser Pro

    Регистрация:
    15 май 2017
    Сообщения:
    4
    Симпатии:
    2
    Спасибо за ответ.
     
    Support нравится это.
  4. igorus

    igorus A-Parser Pro License
    A-Parser Pro

    Регистрация:
    15 май 2017
    Сообщения:
    4
    Симпатии:
    2
    Здравствуйте!

    Задача немного видоизменилась:

    Нужно парсить выдачу google по определенном запросам, в моем случае "inurl:keyword".
    Результатом являются URL адреса по типу как keywordzzz.com/blablabla/ так и domain.com/keyword/ и т.д.

    Так как мне интересны результаты с ключом в самом домене, столкнулся с проблемой форматирования результата.

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

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

    Буду рад любым советом, спасибо заранее.
     
  5. Support

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

    Регистрация:
    16 мар 2012
    Сообщения:
    4.389
    Симпатии:
    2.112
    Добрый день.
    Да, фильтр срабатывает до Конструктора результатов: https://a-parser.com/wiki/query-results-relation/
    Для решения вашей задачи нужно извлекать домены Конструктором результатов, а фильтровать шаблонизатором:
    [​IMG]
    Код:
    [% FOREACH p1.domains;
        IF domain.match(query.orig);
            domain _ "\n";
        END;
    END %]
     
    igorus нравится это.
  6. igorus

    igorus A-Parser Pro License
    A-Parser Pro

    Регистрация:
    15 май 2017
    Сообщения:
    4
    Симпатии:
    2
    Большое спасибо, все работает.
     
    Support нравится это.

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