как спарсить номера с авито
Скрапинг Avito без headless-браузера
Недавно на хабре вышла статья Скрапинг современных веб-сайтов без headless-браузеров, и в комментариях было высказано мнение, что без headless-браузера не выйдет получить номер телефона из объявления на «авито» или «юле». Хочу это опровергнуть, ниже скрипт на python размером менее 100 строк кода, который успешно парсит «авито»
Я не являюсь специалистом по «парсингу» сайтов и это не моя работа, но не редки случаи, когда для решения моих рабочих, и не только задач, приходится это делать. Например необходимо получить баланс лицевого счета в каком-то сервисе(мобильные операторы), который не имеет для этого API или, что совсем печально, список доменов у регистратора (ещё один), который так-же не имеет API.
Если открыть «полную» версию сайта https://avito.ru, и попытаться скопировать номер телефона, то станет понятно, что номер телефона на сайте не написан, а нарисован. Но в мобильной версии сайта, номер отдается текстом. Это можно проверить, если в инструментах разработчика в браузере посмотреть ответы при нажатии на кнопку «Позвонить».
Я не буду детально разбирать свой скрипт, в коде достаточно комментариев, чтоб понять что и на каком этапе происходит. Если кратко, то используется мобильная версия сайта, объявляются переменные для поиска по сайту, а так-же две переменные «key» и «cookie», о них далее подробнее, потом идет процесс получения куки путем открытия главной страницы, далее запускается цикл, которые собирает id всех объявлений проходя по всем страницам. После того, как получены все объявления вторым циклом проходим по ним и получаем интересующую нас информацию.
Скриншот работы скрипта:
По поводу переменных «key» и «cookie», key как я понял статичен, он легко гуглится, то-есть не генерируется на ходу. cookie же я использовал, как простой «антиблок», как оказалось вердикт, что мой IP заблокирован на самом деле не является правдой, достаточно подсунуть свежие куки и «парсинг» продолжается.
Если будет интересно, я подробнее расскажу, как я искал API или могу подобный пример написать и для «юла».
ТОП 3 парсера Авито
На связи Рассл из Dijex Media. Сегодня расскажу Вам про 3 парсера которые помогут Вам собрать базу авито за считанные минуты. Данные базы можно продавать либо использовать в личных целях. И так как всегда без воды, начнём!
1. Первый парсер (бесплатный онлайн парсер)
https://goodparser.ru/
1. Это единственный на рынке 100% бесплатный онлайн парсер Авито. Сервис зарабатывает с голосовых рассылок и предоставляет парсер авито всем пользователям абсолютно бесплатно
2. Работает в облаке. Можно пропарсить базу авито как с телефона так и с компьютера либо планшета. Скорость парсинга 20000 контактов за 5 минут
3. Конфигурация фильтров. Фильтрует дубли, защищенные номера, и ряд других парамметров которые необходимы при обработке базы.
4. Парсер новых объявлений. Парсер собирает только вышедшие объявления и отправляет уведомления на почту, либо сразу можно запустить голосовую рассылку роботом
2. Второй парсер Авито
Это онлайн парсер авито которым можно пользоваться бесплатно.
В день можно легко парсить до 100 000 контактов.
В соотношении стоимости данный парсер занимает лидирующую позицию
Работает в многопоточном режиме
3. Последний парсер ссылка
Многофункциональный парсер авито который устанавливается на Ваш компьютер.
Данный парсер стоит 490 рублей в месяц и обладает большим функционалом
В сравнении с первыми двумя парсерами он будет немножко посложнее, но соответственно стоимость и функционал говорят о своём.
Можно сказать что этот парсер стоит стоит свои вложенных денег.
Так же данный парсер обладает большим функционалом, подробнее можете ознакомиться на основной странице парсера.
Ещё есть один крутой парсер, но не авито а яндекс карт
Как использовать номера телефонов с авито?
Номера можно использовать для WhatsApp и СМС рассылок о которых мы рассказываем в других статьях на нашем блоге.
Как запустить WhatsApp рассылку с авторегестрацией и прогревкой симкарт
Как запустить СМС рассылку за за 40 копеек / 1 сообщение
Бесплатный парсер авито
Как пропарсить объявления и телефоны авито?
Парсер авито — ещё его называют Авито собиратель, сканер авито или граббер. Существует множество различных программ которые в автоматическом режиме могут собрать контактные данные с авито. Стоит учесть что парсеры собирают только данные которые находятся в открытом доступе, такие данные как почта и данные из профиля пользователя парсеры не собирают. Так же парсеры не могут собирать резюме, это платная услуга авито и обойти такое ограничение с помощью парсера невозможно.
Инструкция по парсингу авито
1. Первым шагом необходимо зайти на авито и определить свою целевую аудиторию, выберите необходимый фильтр и посмотрите какое колличество контактов сейчас находится на авито по данному фильтру
2. Вторым шагом заходим в онлайн парсер и выбираем необходимый фильтр. Так же возможен парсинг без фильтра. Вместо фильтра Вы можете запустить парсинг по ключевому слову. Ещё Вы можете совмещать парсинг по фильтру + ключевое слово.
Можно вбить количество номеров как на Авито. В то же время можно вбить любое другое количество объявлений. Важно заметить что парсер автоматически парсит дубликаты телефонов и собирает только уникальные номера.
3. Укажите за какую дату вы хотите выгружать объявления. Возможна Выгрузка за последнии 6 месяцев. Для этого укажите диапазон дат как на изображении ниже.
4. Начинается сбор контактов с Авито. В это время парсер собирает объявления в CSV таблицу. Важно не закрывать страницу до того момента пока парсер не соберёт все контакты.
5. После того как парсинг завершиться у Вас появится ссылка, где Вы сможете скачать данный файл. После этого можно обновить окно и запускать парсер заново.
Как использовать базу собранную с Авито?
Базу Авито применяют для различных целей, и для этого есть не менее крутые инструменты которые могут автоматизировать рутинную работу.
1. Голосовая рассылка — это онлайн сервис в который Вы загружаете базу, записываете голосовое сообщение, ставите распознование голоса или нажатий и запускаете обзвон. Робот будет прозванивать тысячи контактов за несколько минут. Заинтересованным клиентам можно сразу отправлять СМС, переключать на менеджера или выгружать в CRM систему. Сервис голосовых рассылок
2. Массовая WhatsApp рассылка — это программа которая делает рассылку Ваших сообщений в автоматическом режиме. Программа отправляет текст, аудио, видео по базе контактов которую Вы загрузили в неё. Программа WhatsApp рассылки
Парсинг телефонов с Авито

Действие первое. Загружаем страницу с объявлением, средствами PHP с помощью CURL или file_get_contents(), затем в исходном полученном коде ищем две переменные, это item.phone и item_id.
Получаем их из страницы, и далее переходим к функции, которая оперируя этими переменными сформирует для нас hash код, который далее требуется подставить в URL вызова картинки с телефоном, что-бы получить её и сохранить на сервер, и затем передать скрипту который распознает цифры на картинки выдав номер телефона уже в текстовом формате.
URL картинки имеет вид:
http://www.avito.ru/items/phone/<$item_id>?pkey=<$pkey>
Как видно, генерированный hash следует подставаить в переменную pkey.
Функция, для получения hash на javascript, присутствует среди скриптов самого Авито, но все скрипты хорошенько минимизированны и обфусцированны, по этому найти ее не так то просто. Раньше эта функция называлась phoneDemixer, сейчас она не имеет конкретного название и выглядит так:
Думаю переписать данную функцию на PHP, программисту среднего звена не составит особого труда.
После того, как URL картинки будет иметь законченный вид, следует подгрузить по нему картинку. В данном случае стоит учесть что запрос следует делать по протоколу HTTPS. В качестве реферера указывать URL объявления на Авито. Полученный URL картинки с телефоном, на сколько мне известно имеет постоянный вид и не меняется, даже не смотря на то, что при каждой перезагрузки страницы система выдает разное значение переменной item.phone.
Как распознать цифры с картинки, я писал однажды тут — PHP: распознать цифры, буквы с картинки
Алгоритм действий не поменялся и по сей день работает как часы.
Соединив воедино парсинг страницы, парсинг телефонного номера с распознаванием текста с картинки, мы получим на выходе готовый к использованию многофункциональный парсер.
Парсер Авито
С декабря 2020 года сбор телефонов не работает, т.к. Ави*о сделало телефоны доступными только для зарегистрированных пользователей. В настоящее время Ави*о выдает в открытом доступе только телефоны компаний и подменные.
Преимущества нашего парсера Авито: низкая цена, высокая скорость сбора, бесплатно до 100 телефонов, гибкая настройка,бесплатно уведомления раз в час, оповещения в Телеграм, мониторинг истории изменения цен.
Возможности нашего парсера
Уведомления о новых объявлениях
Зарегистрироваться и начать работу (в день регистрации бесплатно проверка раз в минуту, далее раз в час).
Подробнее про тарифы и то как работать с системой тут.
Сбор данных
При регистрации включается тариф Minuta (до конца дня) и на балансе будет 1 руб., которого хватит на сбор 100 телефонов и дополнительных данных.
Телефоны из резюме не собираются.
Подробнее про настройку парсера для сбора телефонов с Авито тут.
Проверить парсер Авито онлайн
Здесь Вы можете проверить работоспособность нашего парсера Авито онлайн, а также получить данные с результатов поиска Авито в виде текста с разделителями.
После нажатия на кнопку в новом окне выведутся результаты парсинга Авито по заданной ссылке, где будет выведена информация, доступная в бесплатном режиме.
Адрес страницы https://m.avito.ru/moskva приведен для примера, Вы можете его на любой другой адрес со списком объявлений на мобильной или обычной версии Авито.
Вот так выглядит часть страницы, с результатом работы парсера, в верхней части объявления в виде таблицы, а в нижней блок текста с разделителями.





