Как найти страницы на которых есть текст именно в заданном вхождение

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

  1. Lev2009

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

    Регистрация:
    10 авг 2020
    Сообщения:
    5
    Город:
    Москва
    Здравствуйте,

    Есть список ссылок сайтов со страницами robots.txt, вида Ссылки недоступны для гостей, Ссылки недоступны для гостей и т.д. Стоит задача спарсить все закрытые от индексации сайты, т.е нужно отловить все страницы где на странице есть Disallow: /

    Но проблема в том, что на страницах robots.txt могут быть и такие записи

    Disallow: /manager/
    Disallow: /core/
    Disallow: /connectors/

    а мне надо отловить, именно только те страницы где есть только такое вхождение "Disallow: /" без хвостов в виде core/, manager/ и т.д

    Пробовал применить вот такую конструкцию,

    [CHECKENTRY(Disallow: /[FULL])][DOCSOURCE][THENTEXT]<CD_DOCURL!>[/CHECKENTRY]

    где при помощи [FULL] попытался добиться полного совпадения вхождения, но почему-то не работает

    Подскажите пожалуйста, что я делаю не так?
     
  2. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Код:
    Disallow: /{br}
    Код:
    [CHECKENTRY(Disallow: /{br})][FIRST_REPLACE({get}|{get}{br})][DOCSOURCE][/FIRST_REPLACE][THENTEXT]<CD_DOCURL!>[/CHECKENTRY]
     
  3. Lev2009

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

    Регистрация:
    10 авг 2020
    Сообщения:
    5
    Город:
    Москва
    хм, а что значит вот эта конструкция
    {get}|{get}{br}) ?
     
  4. Lev2009

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

    Регистрация:
    10 авг 2020
    Сообщения:
    5
    Город:
    Москва
    Все равно он находит страницы где вхождение
    Disallow: / даже если оно в составе конструкций типа Disallow: /manager/
     
  5. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Добавляет к
    [DOCSOURCE]
    Дополнительный перенос строки (на случай, если после Disallow: / нет переноса строки {br}).
     
  6. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Напишите URL такой страницы.
     
  7. Lev2009

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

    Регистрация:
    10 авг 2020
    Сообщения:
    5
    Город:
    Москва
    К примеру вот Ссылки недоступны для гостей
     
  8. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Вот код страницы
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    В нем нет строки Disallow: / (по ней вы и хотели проверять), соответственно, макрос и не выводит ничего. В чем проблема тогда?
     
  9. Lev2009

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

    Регистрация:
    10 авг 2020
    Сообщения:
    5
    Город:
    Москва
    Извините, не правильно понял ваш вопрос, но вот например и эту строку "Disallow: *?*" макрос тоже тоже не находит,

    [CHECKENTRY(Disallow: *?*{br})][FIRST_REPLACE({get}|{get}{br})][DOCSOURCE][/FIRST_REPLACE][THENTEXT]<CD_DOCURL!>[/CHECKENTRY]
     
  10. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Вы просили для Disallow: /, я сделал для Disallow: /. Пожалуйста, формулируйте задачи точнее.
     
  11. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Сейчас доработаю.
     
  12. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Замените файл Content Downloader.exe (в папке с программой) этим файлом:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 5 постов.**
    В нем добавлен оператор {lf} (Line feed) для макросов [CHECKENTRY]

    Используйте такой код шаблона вывода для решения вопроса:
    Код:
    [CHECKENTRY(Disallow: /{lf}||Disallow: *?*{lf})][FIRST_REPLACE({get}|{get}{br})][DOCSOURCE][/FIRST_REPLACE][THENTEXT]<CD_DOCURL!>[/CHECKENTRY]
     
Similar Threads
  1. Jagger
    Ответов:
    10
    Просмотров:
    2.941
  2. Пётр_Викторович
    Ответов:
    1
    Просмотров:
    972
  3. Cokolok
    Ответов:
    2
    Просмотров:
    991
  4. jumanji
    Ответов:
    8
    Просмотров:
    423
  5. infernalrain
    Ответов:
    1
    Просмотров:
    261
Загрузка...

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