Бесплатный парсер Авито поможет вам собрать информацию о товарах

Бесплатный парсер Авито поможет вам собрать информацию о товарах

Представленный здесь парсер авито поможет вам собрать информацию и товарах из объявлений в системе Avito.ru. Авито является одной из самых популярных в России досок объявлений частных лиц, на которой представлены десятки миллионов товаров. С помощью этого парсера вы сможете забрать информацию о товарах, представленных в заданной категории, а также, если вы будете использовать собственный российский прокси — контактную информацию продавца.

Небольшое дополнение. Основной парсер в данной статье парсит обычную версию сайта. В обычной версии сайта телефоны показываются как изображения, а потому требуют специальный OCR функционал, который есть у нас в облаке, но отсутствует в скомпилированной версии. Поэтому запуск парсера вне нашего облака был ранее практически невозможен (была возможность сбора данных без контактных телефонов). Теперь мы представляем вам также парсер для мобильной версии сайта. Этот парсер не требует OCR, и вы сможете использовать скомпилированную версию парсера у себя на компьютере или сервере.

Примерное количество товаров: в зависимости от категории от нескольких сотен до нескольких миллионов
Примерное количество запросов: в зависимости от категории от нескольких сотен до нескольких миллионов
Рекомендуемый план подписки: в зависимости от категории от Free до XX-Large

ВНИМАНИЕ! Количество запросов может превышать количество товаров, потому что данные о вариациях, изображениях и др. могут парсится используя запросы к дополнительным ресурсам. Также часть данных о товаре может доставляться с помощью XHR запросов, что также увеличивает общее количество необходимых запросов.

Как пользоваться парсером объявлений авито

Для использования парсера информации с сайта Авито вы должны иметь учетную запись в нашем сервисе Diggernaut.

  1. Пройдите по этой ссылке для регистрации в сервисе Diggernaut
  2. После регистрации и подтверждения email адреса войдите в свою учетную запись
  3. Создайте проект с любый именем и описанием, если вы не знаете как, обратитесь к нашей документации
  4. Войдите во вновь созданный проект и создайте в нем диггер с любым именем, если вы не знаете как, обратитесь к нашей документации
  5. Скопируйте в буфер обмена приведенный ниже сценарий диггера и вставьте его в созданный вами диггер, если вы не знаете как, обратитесь к нашей документации
  6. ВНИМАНИЕ! Базовые прокси сервера не позволят вам собирать контактную информацию продавцов. Для этого вам будет нужен собственный российский прокси-сервер. Тип прокси должен быть HTTP/HTTPS (SOCKS4/5 в данный момент не поддерживаются). Вы должны будете прописать ваш прокси сервер в сценарии, как указано. Если этот пункт вам непонятен и вы затрудняетесь как это сделать, свяжитесь с нами через систему поддержки или используя наш онлайн чат, мы обязательно вам поможем. Обратите внимание что символа # не должно быть в строке с вашим прокси, очень многие делают ошибку, оставляя символ решетки перед своим прокси. Другими словами в строке с вашим прокси должно быть не:

а

Естественно вы должны использовать IP, порт (и возможно логин и пароль для прокси) именно вашего прокси, а не примера данного в этой статье.

  1. При необходимости, в 10 строке сценария поставьте URL категории, которую вы хотите парсить, то есть замените категорию, которая стоит сейчас, нужной вам.
  2. Переключите режим работы диггера с Debug на Active, если вы не знаете как, обратитесь к нашей документации
  3. Запустите ваш диггер и дождитесь окончания его работы, если вы не знаете как, обратитесь к нашей документации
  4. Скачайте собранный набор данных в нужном вам формате, если вы не знаете как, обратитесь к нашей документации

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

Сценарий парсера обычной версии сайта Авито

Сценарий парсера мобильного сайта Avito

Обратите внимание, что стартовый URL должен вести на мобильный сайт, а не на основной: m.avito.ru вместо www.avito.ru

Пример данных, собранных парсером с сайта (номера телефонов замаскированы намеренно)

Ниже приведен пример датасета с несколькими товарами в формате JSON (для наглядности). Датасет может быть скачан и как CSV, XLSX, XML, и любой другой текстовый формат используя темплейтный подход.

38 комментариев

  • Nick

    он не скачивается, то есть компилируется, но загрузить его не удается, пробовал вначале в xlsx, затем в CSV

    • Михаил Сисин

      Для запуска парсера не нужно его компилировать, если вы хотите запустить его в облаке. Для того, чтобы скачать файл с данными нужно запускать диггер в активном режиме. В режиме отладки скачивание запрещено, доступен только просмотр. Более подробно с работой сайта можно ознакомиться здесь: Создаем диггер и работаем с ним

    • Михаил Сисин

      Для того, чтобы сайт показывал телефоны, запрос должен быть сделан с российского IP. Вам нужно использовать российский прокси.

  • Подпасок пауков, настройщик краулеров, собутыльник диггеров.

    В компилированном виде не дает телефоны (свои прокси прописаны — аж полсотни штук, и на облаке телефоны есть).
    Не собирает title и price. Ни в облаке, ни компилированный. Проверял CSS запросы из сценария на страницах собранных в базу — все четко находится.
    Для компилироаных сборок в пакете — файл настроек. Изменения в нём учитываются роботом? А то в документации не удалось найти ответа на этот вопрос.

    • Евгений Соломанидин

      По поводу title и price разберёмся и обновим статью в ближайшее время. Спасибо!

      Да телефоны в скомпилированном диггере получить не получится т.к OCR работает только в облаке. Можно сохранять картинки с телефонами как base64.

      Файл в сборке конфиг с которым был скомпилирован диггер, и никак не влияет на его работу.

    • Михаил Сисин

      Для того, чтобы сайт показывал телефоны, запрос должен быть сделан с российского IP. Вам нужно использовать российский прокси.

  • Павел

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

    • Михаил Сисин

      Видимо Вы используете бесплатные или заблокированные прокси, с ними не получится нормально работать. Мы протестировали с заведомо хорошим прокси, телефоны забираются нормально, проблемы в логике парсера нет.

    • Михаил Сисин

      Ну и запускать парсер нужно в облаке, в скомпилированном парсере отсутствует доступ к OCR функционалу (поскольку это наш облачный микросервис), а потому телефоны извлекаться тоже не будут.

  • Дамир

    Помогите, пожалуйста. Скопировал сценарий, вставил ссылку на Авито с примененными фильтрами, вставил прокси, купленный на одном из сайтов (IPv4. приватный).
    Должно работать, но выдает ошибку в логах: Proxy Authentication Required.
    Я так понял, нужно где-то логин и пароль прокси-сервера ввести? Где это нужно сделать?

    • Михаил Сисин

      Если прокси требует авторизацию по паролю, прокси в конфиге надо указывать следующим образом:
      user:pass@proxyip:port
      где
      user — логин для доступа к прокси
      pass — пароль для доступа к прокси
      proxyip — ip адрес прокси сервера
      port — порт прокси сервера

      Например: johndoe23:qwe123@1.1.1.1:3128

      • Дамир

        Михаил, Евгений, спасибо Вам большое. Теперь все работает отлично.
        А можно ли использовать этот сценарий для парсинга Юлы? Или хотя бы адаптировать его каким-то образом для этого?

        • Евгений Соломанидин

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

  • Дамир

    Скажите, пожалуйста, а можно ли как-то парсить данные за определенный промежуток времени? Допустим я спарсил данные 21.09.18, на сегодня, 27.09.18, много новых товаров добавилось, но парсить все, что парсил до этого нет смысла повторно ради этого.

    • Михаил Сисин

      У Вас ошибка в валидационной JSON схеме. Скорее всего вставили конфиг диггера не в то окно редактора.

  • ильдар

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

    • Михаил Сисин

      Проверили парсер с нашим прокси, все работает как надо. Проблема в Вашем прокси, возможно он заблокирован Авито. Если вы используете бесплатные публичные прокси, то такая ситуация весьма частая.

    • Михаил Сисин

      Добрый день, Ольга. Насколько я знаю, доступ до резюме в Авито платный, посему подразумевает авторизацию в Авито. Данный парсер предназначен только для сбора публично доступной информации, поэтому для резюме его использовать не получится, к сожалению.

  • Роман

    Здравствуйте, есть ли возможность парсить только новые объявления? Чтобы он при включении, например, раз в неделю, собирал свежие посты и не трогал уже обработанные.

    • Михаил Сисин

      Возможно, нужно использовать команду walk в режиме unique. Для этого в основном парсере нужно найти строку 44:

      и заменить на

      А если используете парсер для мобильной версии то в строке 42:

      меняем на

      Но данный режим работает только при запуске парсера у нас в облаке.

  • Роман

    Здравствуйте, а возможно ли сделать так, чтобы диггер парсил только новые объявления? Например, чтобы при включении раз-два в неделю, он игнорировал уже пройденные ссылки.

    • Роман

      Прошу прощения за двойной пост — браузер почему-то не показывал, что сообщение было отправлено. Спасибо за помощь с проблемой.

    • Михаил Сисин

      Нужно найти CSS селектор для контейнера на странице в котором находится дата и использовать команду find по аналогии с другими такими же командами. Более подробно о мета-языке можно прочитать здесь

  • Shahri

    Здравствуйте .Такой вопрос мне нужен парсер Авито недвижимость ,есть ли возможность у вас создать мне парсер по моим пожеланиям.Конечно за плату.Мне до этого создали парсер ,ну почему то она не парсит.На мой вопрос он отвечает мол VPN блокирует.А ничего сделать он не может.И мне нужен именно компетентный в этом вопросе человек.

    • Михаил Сисин

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

  • Дамир

    Добрый день!
    Сегодня воспользовался режимом unique. Первый запуск не дал результата — он спарсил все товары в категории. Второй запуск успешный — спарсил 9 новых товаров и остановился.
    До этого последний раз парсер запускался две недели назад. Получается, с данными двухнедельной давности он уже не может сравнивать?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *