Парсер номеров и имён с Юлы с последующей разбивкой по операторам {Get/Post}

DrunkDeath

Client
Регистрация
24.12.2014
Сообщения
616
Реакции
442
Баллы
63
dc204fac49.jpg



Доброго времени суток. Представляю Вам парсер номеров и имён продавцов с сайта youla.ru. Шаблон написан на Post/Get запросах. Имеет функцию рассортировать полученные номера по операторам.


c91da19d91.jpg


Входные настройки шаблона:

6774e9d503.jpg

​
Ссылка из поиска - сюда вставляете ссылку из поиска товаров с выбранными критериями (или нет) на Юле.
Сколько страниц парсить - кол-во станиц, которые шаблон будет парсить.
Сохранять - вид сохранённых данных. "Телефон" или "телефон;имя".
Сортировать по оператору - в конце работы шаблон создаст папку и рассортирует все номера по операторам.

​


Алгоритм работы шаблона:
​
Шаблон берёт заданную ссылку из входных настроек и делает два гет запроса по ней:
5056f3508f.jpg
​

Далее меняет кодировку (ибо зачастую Юла даёт ответ в кодировке Unicode), парсит этот Get запрос Regex'ом на ссылки и удаляет дубли.
Примечание: Почему два гет запроса, а не один. Проблема в том, что в конце ссылки прописывается номер страницы "page=". Но когда парсинг идёт без критериев, то оператор page нужно прописывать как "?page=", а если с критериями, то "&page=".


a34e3a97e5.jpg

de620c94f2.jpg
Далее вытаскивает из полученных результатов ссылки на товары и перекладывает из Временного списка в список Links.
Делаем ещё один Get запрос по ссылке из поиска, чтобы получить Title. Он нам понадобится при дальнейшем создании текстовых файлов и папок.
7f98618c3e.jpg

Теперь шаблон берёт ссылку на товар из списка Links, удаляет дубли, делает Get запрос и парсит номер телефона и имя. Имя получаем в кодировке Unicode, поэтому шаблон ещё раз перекодирует и записывает в файл (создаётся с именем из Title) по заданным параметрам.
d46c23ee43.jpg
И последний этап. Создаёт папку (с именем Title). Берёт номер из нашего созданного списка и делает пост запрос на сайт kody.su. Получает ответ и парсит оттуда оператора и записывает в файл.
af388edd36.jpg

ba0ac6a2ec.jpg
На выходе получаем Файл с номерами и именами (или без) и папку с этими же номерами разбитыми по операторам.

5e753202be.jpg

0a0151a637.jpg

​

Шаблон сам создаёт все файлы в той папке, где находится. Надеюсь шаблон подойдёт новичкам, которые на первых этапах изучения Get/Post, а также тем, кому нужно спарсить базу номеров с юлы для своих целей. Данный шаблон не парсит категорию Авто, так как там другой алгоритм парсинга.
​


Спасибо за внимание. Надеюсь этот шаблон Вам пригодится.
​
 
Номер конкурса шаблонов
  1. Второй конкурс шаблонов
Уровень сложности
Средний
Категория
  1. Парсинг
  2. Доски объявлений

Вложения

Парсит только 1 страницу, если ставишь больше 1 спарсить, не работает.
 
Парсит только 1 страницу, если ставишь больше 1 спарсить, не работает.
Не работает, пишет шаблон выполнен успешно но ни папок ни чего нет!
Разобрался. Глупая мелкая ошибка была в несоединённом кубике. Всё исправил и проверил парсинг больше чем на одну страницу. Всё работает. Шаблон прикрепляю к сообщению.
 

Вложения

  • Оценить
Реакции: fotuvaz
Нужны прокси?
ТС спасибо за шаб
 
Есть ли возможность поменять на OLX?
 
Проверил чек на kody.su, есть лимит запросов с IP.
 
Как узнать, сколько страниц с объявлениями по моему запросу (рубрике)?
И получится ли, когда время будет, дополнить опционально сбор заголовков?
Потому что через n-количество объявлений юла начинает выдавать не релевантные запросу.
 
Последнее редактирование:
Как узнать, сколько страниц с объявлениями по моему запросу (рубрике)?
И получится ли, когда время будет, дополнить опционально сбор заголовков?
Потому что через n-количество объявлений юла начинает выдавать не релевантные запросу.
Во входных устанавливается лимит, если кончатся страницы, то шаблон закончит работу.
Да, это возможно всё в таблицу перекинуть
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)