Русский ИТ бизнес
Русский ИТ бизнес

Кто отлично шарит в парсинге и в JavaScript? Задачка есть и нужен совет бывалых :)

Кто отлично шарит в парсинге и в JavaScript? Задачка есть и нужен совет бывалых :)
Кто отлично шарит в парсинге и в JavaScript? Задачка есть и нужен совет бывалых :)

Есть карточка товара у нас на проекте poisk.im (слева на картинке) и мы хотим сразу, при загрузке этой страницы, показать примеры товаров на ОЗОНе (справа). Лучше это сделать с клиента, дабы не создавать сложности с серверной частью.

Подгрузить "на лету", иными словами, когда человек смотрит нашу карточку. Как это лучше сделать? Подставить в поиск, получить итог, вывести карточки с ОЗОНа. А еще бы потом с ВБ. В нашем дизайне, отмечу - нужна цена, название товара и ссылка на картинку.

Тогда люди смогут сразу увидеть цены на похожие товары на МП, что довольно полезно... Есть идеи? :) С помощью JS это реально сделать?

p.s. как верно написали, там cors :( и это портит малину :)

Русский ИТ бизнес

Комментарии (53)

  • Прыгающий Огурец
    Прыгающий Огурец
    нереально, cors Ответить
    раскрыть ветку (3)
    • Автор канала
      Автор канала
      вот и хреново :( мы тоже так решили Ответить
      раскрыть ветку (1)
      • Океанический Гоблин
        Океанический Гоблин
        Вроде бы надстройки можно делать для браузеров. И в надстройках прописывается какие сайты кроссдоменные можно сделать доступными для cors Ответить
    • Колеблющийся Миротворец
      Колеблющийся Миротворец
      через самописное расширение например, реально таки но есть нюанс😁 Ответить
  • Песчаный Егерь
    Песчаный Егерь
    Если правильно понял задачу, тогда:

    1) Подгружать страницу с товаром Озона в фрейме (если Озон позволяет)
    2) Делать скриншот с локального браузера (может не всегда грузить страницу из-за антибот системы) Ответить
  • Пряный Единорог
    Пряный Единорог
    Интересно, а вы либы для рендера страниц через движок хрома используете ? Через него можно принудительно вызывать функции или скрипты на странице, если они есть такие и получать результат Ответить
  • Песчаный Егерь
    Песчаный Егерь
    3) Самому отрисовать карточку имея данные о товаре Ответить
    раскрыть ветку (8)
    • Автор канала
      Автор канала
      нужна ссылка на картинку и цена+ название. остальное нарисуем Ответить
      раскрыть ветку (7)
      • Прыгающий Огурец
        Прыгающий Огурец
        спп на мп не даст актуальных цен Ответить
        раскрыть ветку (1)
        • Автор канала
          Автор канала
          да пофигу. порядок. я понимаю о чем речь да. Ответить
      • Песчаный Егерь
        Песчаный Егерь
        Картинку и название я думаю для вас не проблема получить, а вот цена постоянно меняется, её проблемотично будет держать актуальной Ответить
        раскрыть ветку (3)
        • Автор канала
          Автор канала
          я думаю цену обновлять... не знаю. сами ломаем голову Ответить
          раскрыть ветку (2)
          • Океанический Гоблин
            Океанический Гоблин
            Так озон говорят разным клиентам может подсовывать разные цены. Ответить
            раскрыть ветку (1)
            • Раздражительный Жираф
              Раздражительный Жираф
              мне кажется для неавторизованных вряд ли Ответить
      • Раздражительный Жираф
        Раздражительный Жираф
        если браузер пользователя тянет содержимое со страницы ozon, чё бы тогда пользователями вообще не парсить что угодно?) Ответить
  • Пряный Единорог
    Пряный Единорог
    Я так парсил однажды сайт один, нашел у них функцию которую они выполняют будучи на странице, понял как она заполняется и через движок хрома вызвал и результат функции получил Ответить
    раскрыть ветку (1)
    • Пряный Единорог
      Пряный Единорог
      Правда, если у них там все сгенерировано, то не получится , названия меняются постоянно Ответить
  • Прыгающий Огурец
    Прыгающий Огурец
    спп + доставка. Ответить
  • Гнутый Дракон
    Гнутый Дракон
    Люди изобретают CORS, чтобы защищаться от такого вида атак

    Автор канала (который "занимается" парсингом): Ответить
    раскрыть ветку (2)
    • Автор канала
      Автор канала
      вдруг :) есть же надежда на чудо. Ответить
      раскрыть ветку (1)
      • Гнутый Дракон
        Гнутый Дракон
        Если только делать серверный прокси на скачку (пусть даже по прямой ссылке, можно whitelist, чтобы избежать CSRF), только так Ответить
  • Прыгающий Огурец
    Прыгающий Огурец
    в мск одна цена будет, в нижневартовске другая и тп. так что пальцем в небо.
    если вопрос стоит чисто аналоги, то можно распарсить, но на прокси и антибан будет слишком дорого, не рентабельно 100% Ответить
  • Песчаный Егерь
    Песчаный Егерь
    Comment media
    Да, cors не даст через Iframe Ответить
    раскрыть ветку (5)
    • Гнутый Дракон
      Гнутый Дракон
      iframe — там вроде другие механизмы защиты (в хеадерах приходят) Ответить
      раскрыть ветку (4)
      • Песчаный Егерь
        Песчаный Егерь
        Мм, а если прокси на nginx, чтобы свой домен проксировал Ozon и для своего же домена делать iframe? Ответить
        раскрыть ветку (3)
        • Гнутый Дракон
          Гнутый Дракон
          iframe тогда вообще в этой схеме не нужно (это просто лишнее) Ответить
          раскрыть ветку (2)
          • Песчаный Егерь
            Песчаный Егерь
            а как страницу кроме как через iframe отобразить на другой странице? Ответить
            раскрыть ветку (1)
            • Гнутый Дракон
              Гнутый Дракон
              DOM просто отображаешь и все) Ответить
  • Икающий Профессор
    Икающий Профессор
    в любом случае через сервер нужно Ответить
  • Икающий Профессор
    Икающий Профессор
    1000 клиентов откроют один и тот же товар, 1000 запросов? нет, один серверный запрос + кеш Ответить
    раскрыть ветку (1)
    • Автор канала
      Автор канала
      прокси на сервере помогут :) Ответить
  • Сдутый Генерал
    Сдутый Генерал
    Через сколько запросов МП банят ip, fingerprint или там challenges? Ответить
    раскрыть ветку (8)
    • Пухлый Хариус
      Пухлый Хариус
      Нашёл у кого спросить Ответить
    • Океанический Гоблин
      Океанический Гоблин
      Через фингерпринт не банят, так как это вообще стрельба по площадям. У эпплов все фингерпринты одинаковые, хрен забанишь. ip от провайдера динамические. Ответить
      раскрыть ветку (6)
      • Сдутый Генерал
        Сдутый Генерал
        Ну так мне интересно по каким признакам сейчас банят МП, какими методами ограничивают парсинг Ответить
        раскрыть ветку (5)
        • Океанический Гоблин
          Океанический Гоблин
          Максим в этой теме спец. То что парсил я, там были простые защиты, которые легко обходились. Ответить
          раскрыть ветку (4)
          • Раздражительный Жираф
            Раздражительный Жираф
            крутят вертят какой-нибудь puppeteer с библиотекой в stealth режиме, а потом хуяк, не работает. Виталик! Доставай Zennoposter, оставляй ноут открытым на ночь, будем по старинке парсить Ответить
            раскрыть ветку (3)
            • Океанический Гоблин
              Океанический Гоблин
              Не, ну это классика. Вопрос же был как жертва парсинга защищается и отсекает парсер-ботов от клиентов. Ответить
              раскрыть ветку (1)
              • Раздражительный Жираф
                Раздражительный Жираф
                если не лезут в поведение пользователя, то обычно проверка браузера на наличие систем автоматизации, проверка всяких webgl, webrtc, сверка часового пояса с временем пользователя

                интересно недавно было про то как google смотрит на поведение пользователя. Inside SearchGuard: How Google detects bots and what the SerpAPI lawsuit reveals - https://searchengineland.com/inside-google-searchguard-467676 Ответить
            • Межпространственный Удав
              Межпространственный Удав
              Зенопостер Ответить
  • Пыльный Огурец
    Пыльный Огурец
    Макс, ты же сам рекомендовал плагин который на карточке товара на озоне или ВБ показывает альтернативы. Можно спросить у автора плагина что у него внутри. Ответить
  • Дымящийся Гриб
    Дымящийся Гриб
    А можно вопрос а поиск карточек по названию будет? Просто напряму в браузере да не получиться но можно поставить свой CORS proxy и все реалистичнее уже, нужно будет дальше смотреть но задача вполне реализуемая Ответить
  • Автор канала
    Автор канала
    у меня безлимитка :) Ответить