Ответы пользователя по тегу Парсинг
  • 2gis требует заблокировать сайт с парсером, это законно?

    kimono
    @kimono
    Web developer
    Так это же прописано в лицензионном соглашении https://law.2gis.kz/licensing-agreement/.
    А именно:

    6.1. Пользователь не имеет права самостоятельно или с привлечением третьих лиц:
    ...
    6.1.2. Создавать программные или справочно-информационные продукты и/или сервисы с использованием Программных продуктов и/или Онлайн-сервисов 2ГИС, а также включаемых в их состав баз данных или извлеченных (извлекаемых) из них текстовых, картографических и справочно-информационных материалов, а равно иных Объектов интеллектуальной собственности, указанных в пункте 2.1 настоящего Соглашения.
    6.1.3. Воспроизводить и распространять Программные продукты 2ГИС в коммерческих целях без письменного согласия Правообладателя.
    6.1.4. Извлекать из баз данных, включаемых в состав Программных продуктов 2ГИС, любые картографические, справочно-информационные и прочие материалы и осуществлять их последующее использование в любой форме и любым способом.
    6.1.5. Использовать базы данных, входящие в состав Программных продуктов 2ГИС, отдельно от таких Программных продуктов 2ГИС.
    Ответ написан
    3 комментария
  • Как сделать парсер доски объявлений?

    kimono
    @kimono
    Web developer
    Заходите на страницу с объявлением и ищите это:
    <span class="show-phones" id="tm-telephone-body" data-url="/a/ajaxPhones?id=28104015" data-id="28104015">
      Показать телефон
    </span>


    Далее берёте ссылку из атрибута data-url и выполняете запрос с заголовком XMLHttpRequest:

    curl -X GET \
      'https://krisha.kz/a/ajaxPhones?id=28104015' \
      -H 'x-requested-with: XMLHttpRequest'


    В ответ получаете:
    ["+7 707 892 8095"]
    Ответ написан
    Комментировать
  • Научиться парсингу - с чего начать?

    kimono
    @kimono
    Web developer
    В самом парсинге нет ничего сложного - берете несколько кусков чужого кода (например несколько однотипных страниц HTML с товаром или новостями), определяете то что вам нужно вытащить, далее смотрите какие-то закономерности, вложенности, признаки и т.д. Определяете - всегда ли это работает или нет. Пишете шаблон (или шаблоны в циклах), потом проверяете тестами - лучше онлайн (например https://regex101.com/ ), чтобы можно было сразу видеть результат.
    Другое дело как быть со "спарсенными" данными - стоит им доверять полностью или нет. Что делать с данными, если что-то пошло не так.
    Ответ написан
    1 комментарий
  • Алгоритм парсинга страниц по списку ключевых слов?

    kimono
    @kimono
    Web developer
    sandbox.onlinephpfunctions.com/code/37932fd36ced8e...
    $text = 'Добрый день.Вопрос про сам процесс парсинга страницы, а не ее получение (с помощью curl или любого другого инструмента).
    Есть некая страница (HTML-документ) и список ключевых слов. Необходимо получить количество вхождений каждого слова на странице. Мне пришло в голову только генерировать регулярку (что-то вроде (слово1|слово2|слово3)), а потом считать простым перебором количество вхождений. 
    Какие есть более изящные решения? Реализовывать предполагаю на PHP или nodejs.';
    
    preg_match_all('/слово|документ/ui', $text, $matches, PREG_PATTERN_ORDER);
    
    print_r($matches);


    Array
    (
        [0] => Array
            (
                [0] => документ
                [1] => слово
                [2] => слово
                [3] => слово
            )
    )
    Ответ написан