Добавить новость

Владимир Ефимов: На платформе будущей станции метро «ЗИЛ» установили архитектурное панно

Еще один тепловоз модернизировали на заводе в Коломне

Тверские спортсменки вернулись с медалями с Чемпионата России по боксу

Студентов из Волоколамска научили уходу за животными в Московском зоопарке



Новости сегодня

Новости от TheMoneytizer

Написание парсера для сайта apteka.ru

Необходимо написать парсер (веб-скраппер) для сайта apteka.ru.

Стек/Язык программировани/Используемые библиотеки абсолютно не важны.

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

Сразу напишу что это очень не тривиальная задача. Если вы не гуру в написании парсеров и не умеете обходить различные защиты, то лучше проходите мимо и не тратье ни свое, ни наше время.

На сайте стоит защита QRATOR + кастомная защита с капчей.

Парсер должен работать в двух режимах:
  • Через поиск на сайте
  • Через загруженные в парсер ссылки
Логика работы парсера через поиск:
  1. Загружаются запросы в парсер
  2. Парсер собирает со всех страниц выдачи все ссылки товаров
  3. Затем открывает все полученные ранее ссылки и с них собирает все необходимые данные
Логика работы парсера через загруженные ссылки:
  1. Загружаются ссылки в парсер
  2. Эти ссылки открываются парсером и с них собираются все необходимые данные
Данные которые необходимо собирать с карточек товара:
  • Наименование товара
  • Производитель
  • Наличие товара
  • Цена
  • Цена со скидкой
  • Форма выпуска (мазь, пилюли и т.п.)
  • Дозировка лекарства
  • Объем
  • Ссылка на товар
  • Ссылка на основное изображение товара
  • Дата сбора (в формате timestamp)
Стандартный регион для этого сайта - Москва, но нам необходимо собирать данные с абсолютно всех регионов этого сайта.
Регионы необходимо сдать в формате json:
{"Название региона на русском": "Занчение для установки этого региона в парсере",}

Также одно из важнейших требований - скорость сбора. Нам необходимо обрабатывать не менее 1 млн ссылок в сутки

В идеале будет использовать примерно такой шаблон кода:
  • Функция parse. Грубо говоря это main, в котором будет происходить распределение это сбор по поиску или по карточкам.
  • Функция parsePage. Здесь происходят все необходимые действия для сбора данных с поиска
  • Функция parseCard. Здесь происходят все необходимые действия для сбора данных с карточки товара
  • Функция makeRequest. Здесь происходят запросы к сайту
ВАЖНО. Критерии оценок по которым будет приниматься задача:
  1. Парсер работает и по поисковым запросам и по ссылкам
  2. Парсер собирает все необходимые данные с карточек
  3. Парсер верно собирает цены для различных регионов
  4. Вы написали json с регионами и значениями для их установки
  5. Парсер работает с необходимой для нас скоростью
  6. Парсер должен стабильно отработать в течении месяца на наших серверах

Читайте на 123ru.net


Новости 24/7 DirectAdvert - доход для вашего сайта



Частные объявления в Вашем городе, в Вашем регионе и в России



Smi24.net — ежеминутные новости с ежедневным архивом. Только у нас — все главные новости дня без политической цензуры. "123 Новости" — абсолютно все точки зрения, трезвая аналитика, цивилизованные споры и обсуждения без взаимных обвинений и оскорблений. Помните, что не у всех точка зрения совпадает с Вашей. Уважайте мнение других, даже если Вы отстаиваете свой взгляд и свою позицию. Smi24.net — облегчённая версия старейшего обозревателя новостей 123ru.net. Мы не навязываем Вам своё видение, мы даём Вам срез событий дня без цензуры и без купюр. Новости, какие они есть —онлайн с поминутным архивом по всем городам и регионам России, Украины, Белоруссии и Абхазии. Smi24.net — живые новости в живом эфире! Быстрый поиск от Smi24.net — это не только возможность первым узнать, но и преимущество сообщить срочные новости мгновенно на любом языке мира и быть услышанным тут же. В любую минуту Вы можете добавить свою новость - здесь.




Новости от наших партнёров в Вашем городе

Ria.city

Заблокировали трассы и мосты: почему в Абхазии вспыхнули массовые беспорядки

Российские силы атаковали и уничтожили 12 пикапов, предназначенных для запуска беспилотников, в районе Николаева

Стало известно, рядом с кем похоронят пресс-секретаря SHAMAN

ФСВТС: от иностранных государств приходят запросы на покупку Су-57

Музыкальные новости

Freedom Holding Corp. увеличил выручку на 33% и купил SilkNetCom

Mash: жену Хабенского актрису Литвинову госпитализировали из-за суставов

Певица Ильвина примет участие большом музыкальном проекте стран БРИКС

Праздник к нам приходит вместе с Fix Price

Новости России

Владимирская область вступила в клуб инновационных регионов России наряду с 19 прогрессивными регионами 

Суровые будни владимирской молодежи

Стало известно, рядом с кем похоронят пресс-секретаря SHAMAN

В Госдуме предложили сократить шестидневную рабочую неделю в декабре

Экология в России и мире

Дмитрий Несоленый возглавил депо «Унеча» компании «ЛокоТех-Сервис»

Отличный выбор для электромоторов: питание для приключений с низкотемпературной литиевой батареей Power Queen 12V 280Ah для циклической работы

Рекордное участие в Московском кубке: 74 сомелье соревнуются за звание лучшего столичного профессионала

Красноярцы представят свои социальные проекты на конференции «Спорт и общество: энергия изменений»

Спорт в России и мире

Медведев получил предупреждение за разбитую ракетку в матче с Фрицем на Итоговом турнире

Денис Шаповалов стал чемпионом турнира ATP-250 в Белграде

Кудерметова и Чжань Хаоцин проиграли в полуфинале Итогового турнира WTA в парах

Фриц назвал смешным поведение Медведева в матче Итогового турнира

Moscow.media

В селе Старцево Орловского МО сгорело несколько домов

История про Кошку и её Человека

Осень в Рыжково....

Врачи спасли мальчика с пулевым ранением головы











Топ новостей на этот час

Rss.plus






Еще один тепловоз модернизировали на заводе в Коломне

Модель Решетова призналась, что вода и фрукты помогают ей снизить тревожность

Синоптик спрогнозировала теплую зиму в Москве

Стратегические ракетоносцы ВКС России провели полёт над Баренцевым морем