Ответы пользователя по тегу Парсинг
  • Быстрый и удобный парсинг сайтов?

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

    я могу подсказать как, но услуги свои не предоставляю)

    а теперь разберемся

    ". Контент может быть на сайте как с кривой версткой (без закрывающих тегов), так и с нормальной версткой." - такого не бывает. вы всегда получите от веб-сервера валидный хтмл, иначе браузер такую страницу и не покажет. в чем смысл их?) их дом браузер не обработает.

    "Контент может быть статичным и динамичным (подгружаться через js). Один из примеров задачи: на странице с пагинацией зайти на страницы с первой по пятую пагинацию и собрать заголовки, картинки и цены товаров."

    это обычные запросы JS. он их только делает, откройте devtools(вкладка network xhr) и увидите их. А бывает еще всякий SSR.

    вердикт
    Вы написали тз не на том сайте. Обратитесь к скраперам)

    зы...если будут вопросы по делу - отвечу с радостью.
    Ответ написан
    Комментировать
  • CodeForces добавил защиту от парсинга?

    @Giperoglif
    ну, во-первых, он за клаудфларе

    The site https://codeforces.com/ is behind Cloudflare (Cloudflare Inc.) WAF.


    если раньше не был, то надо смотреть историю днс, может быть, если сильно повезет, то какой-то из айпи адресов будет прямым их веб-сервера, рабочим и открытым для коннектов не с клаудфларе..
    второй вариант - попробовать получить от них письмо. и опять же, если сильно повезёт и они отправляют почту с основного веб-сервера то айпи можно увидеть в заголовках письма(частенько так WAF можно обойти).

    если ничего не выйдет, то стоит попробовать патченый курл, который максимально мимикрирует под браузер. гуглить "curl impersonate". возможно клаудфларе его пропустит, но надо тестить.

    при вообще полном отчаянии попробовать selenium, под пайтон, насколько мне известно, тоже существует какой-то патченый для этих дел, но я не питонист.

    в общем, простор для творчества! парсинг - это весело)
    Ответ написан
    Комментировать
  • Как экспортировать товары с html сайта без базы данных?

    @Giperoglif
    1. спарсить в базу данных.
    2. написать скрипт импорта в CMS из неё.

    либо сразу спарсить в CMS.
    Ответ написан
    Комментировать
  • Как распарсить json идущий друг за другом со вложенностью?

    @Giperoglif
    $str = '{"param1": "value1","param1": "value1","param1": "value1","param1": {},"param1": "value1"}{"param1": "value1","param1": "value1","param1": "value1","param1": {},"param1": "value1"}{"param1": "value1","param1": "value1","param1": "value1","param1": {},"param1": "value1"}';
    $arr = explode('}{', $str);
    print_r($arr);
    
    Array
    (
    [0] => {"param1": "value1","param1": "value1","param1": "value1","param1": {},"param1": "value1"
    [1] => "param1": "value1","param1": "value1","param1": "value1","param1": {},"param1": "value1"
    [2] => "param1": "value1","param1": "value1","param1": "value1","param1": {},"param1": "value1"}
    )


    +немного допилить напильником каждый элемент массива до нормальной json-строки и дальше как обычно

    изврат, конечно
    Ответ написан
    1 комментарий
  • Как вытащить данные таблицы?

    @Giperoglif
    да хоть каким-нибудь substring'ом от </script>
    Ответ написан
  • Какие существуют способы получения canonical url при парсинге конкретного адреса ресурса?

    @Giperoglif
    ну а как вы выкрутитесь, если он может быть в общем-то каким угодно, если не указан. и для чего лично вам нужен каноникал стороннего сайта? это сугубо проблемы этого сайта, а не ваши.
    Ответ написан
    1 комментарий