Парсинг: Как собрать данные с динамических сайтов? Практический урок на примере Wildberries

  Рет қаралды 44,161

The ParseHub

The ParseHub

Күн бұрын

Пікірлер: 171
@the_parse_hub
@the_parse_hub Жыл бұрын
Исходный код: github.com/Duff89/wildberries_parser В видео есть ошибка: sale - это процент скидки, а не количество продаж
@АндрейИльин-д6ж
@АндрейИльин-д6ж Жыл бұрын
я автору ролика уже говорил об этом
@ДворецкийЕвгений
@ДворецкийЕвгений Жыл бұрын
Подскажите как выручку считают сервисы аналитики?
@the_parse_hub
@the_parse_hub Жыл бұрын
@@ДворецкийЕвгений Приведите пример такого сервиса, посмотрю
@ТибальтСладкоголосый
@ТибальтСладкоголосый Жыл бұрын
Предположу что сравнивают остатки товаров у продавцов за какой то промежуток времени и высчитывают разницу@@ДворецкийЕвгений
@2-ойакк-з7ъ
@2-ойакк-з7ъ Жыл бұрын
Можете подсказать как считают кол-во продаж товара различные сервисы аналитики по типу mpstats, sellmonitor и тд, спасибо большое:)@@the_parse_hub
@ناول-ش6ص
@ناول-ش6ص Ай бұрын
После таких уроков и стиля автора, так и хочется пойти изучать питон. Просто. Понятно. Доступно.
@the_parse_hub
@the_parse_hub Ай бұрын
Спасибо!
@aroundx
@aroundx Жыл бұрын
Спасибо!!!!!не мог написать код для парсера динамического сайта, наткнулся на твоё видео и все получилось!🎉🎉🎉 Спасибо тебе,жду следующих уроков
@the_parse_hub
@the_parse_hub Жыл бұрын
Рад был помочь
@paleface_brother
@paleface_brother Жыл бұрын
Это я удачно зашёл, большое спасибо!
@Loony666Noob
@Loony666Noob Жыл бұрын
Очень крутой контент! Спасибо огромное за наглядный пример, лайк и подпишусь обязательно! =) 🔥
@non5309
@non5309 Жыл бұрын
приятная подача, хороший материал, спасибо за видео!
@clandast2136
@clandast2136 Жыл бұрын
Спасибо большое за видео, очень помогаешь, продолжай дальше.
@qevinskvad9012
@qevinskvad9012 Жыл бұрын
Канал просто супер. Ты крутой мужик
@lalfit4866
@lalfit4866 Жыл бұрын
Вау, это очень круто, продолжай в том же духе!🎉
@ЭрикГалин-я3з
@ЭрикГалин-я3з Жыл бұрын
ВАУ наконец то нужное видео на ютубе
@АлексДан-ш2к
@АлексДан-ш2к Жыл бұрын
Привет, Минск комары 🤗красава 🤗😎
@dominiquediaz7506
@dominiquediaz7506 Жыл бұрын
Спасибо дружище, очень интересный парсинг, попробую такое на js написать
@MrYtkonos
@MrYtkonos 11 ай бұрын
Отличное видео, очень не хватает таких подробных разборов на конкретных примерах, спасибо большое! А можно парсить сразу в гугл таблицу?
@the_parse_hub
@the_parse_hub 11 ай бұрын
Спасибо! Парсить сразу в гугл-таблицу конечно можно, нужно переписать методы сохранения в моём проекте. Если сами не сможете, попросите Chatgpt, он должен справиться
@AydarSadrtdinov
@AydarSadrtdinov Жыл бұрын
Доброго здравия. Подписался, очень интересно и доходчиво объясняешь. Спасибо. Одна просьба: плохо слышу - напиши пожалуйста каким пакетом IDE пользуешься, а то чувствую мой блокнот++ не особо будет удобен при изучении питона. Спасибо ещё раз.
@the_parse_hub
@the_parse_hub Жыл бұрын
Спасибо. Использую Pycharm
@promanplayer8064
@promanplayer8064 Жыл бұрын
Круто, думал как-то заняться парсионгом, но так руки и не дошли
@SomthNew-l9q
@SomthNew-l9q 9 ай бұрын
Как сделать, чтобы питон сам вписывал в поисковую строку сайта нужное нам слово (например название товара) и только потом собирал инфу?
@the_parse_hub
@the_parse_hub 9 ай бұрын
Для таких целей можно использовать эмулятор браузера, к примеру selenium или playwright, но гораздо правильнее будет проанализировать запросы. Вот например запрос по слову "nike", дальше думаю сами разберетесь: search.wb.ru/exactmatch/sng/common/v4/search?ab_testing=false&appType=1&curr=byn&dest=-3626404&query=nike&resultset=catalog&sort=popular&spp=30&suppressSpellcheck=false&uclusters=0&uiv=2
@diatm1506
@diatm1506 Жыл бұрын
Pandas тоже норм для работы с данными. Спс за pydentic. Интересно если ещё и по asus gigabyte, asrock пройтись или по всем брендам которые там есть)))
@Zdravmag
@Zdravmag Жыл бұрын
Здравствуйте, каша в голове) пазл не складывается) без class - ов тоже самый код можно написать? В других видео про парсинг их не пишут. Спасибо за урок
@the_parse_hub
@the_parse_hub Жыл бұрын
Добрый день. Где-то классы пишут, где-то нет, это уже выбор каждого. Но если Вы будете работать программистом в компании, код без классов будете писать довольно редко. Я очень хочу записать урок про базу ООП, т.е просто донести суть, без лишний деталей, но всё время откладываю этот момент
@ТибальтСладкоголосый
@ТибальтСладкоголосый Жыл бұрын
Спасибо за подробный разбор, как для новичка (учу питон месяца 2) , реализация через классы пока кажется довольно сложным. Еще столкнулся с проблемой, пишу на vs code и там модуль pydantic не работает, пишет что устарела функция .parse_obj (или может я не верно импортировал?) попробую без него разложить json по ключам , но уже завтра )
@the_parse_hub
@the_parse_hub Жыл бұрын
Попробуйте вместо .parse_obj использовать .parse_raw
@ТибальтСладкоголосый
@ТибальтСладкоголосый Жыл бұрын
К сожалению такая же ошибка, эту функция перечеркнута в vs code, уже пробовал и без вириальной среды и все равно получаю вот такую ошибку: PydanticDeprecatedSince20: The `parse_raw` method is deprecated; if your data is JSON use `model_validate_json`, otherwise load the data then use `model_validate` instead. Deprecated in Pydantic V2.0 to be removed in V3.0. В любом случаи ваш урок был очень полезным для меня, попробую написать это по своему, с помощью функций, и модулей с которыми я уже знаком. Тут главное, что я понял ту идею парсинга, где все можно через api и json вытащить. @@the_parse_hub
@the_parse_hub
@the_parse_hub Жыл бұрын
@@ТибальтСладкоголосый всегда можно установить какую-то конкретную версию, например так: pip install pydantic=2.0
@ТибальтСладкоголосый
@ТибальтСладкоголосый Жыл бұрын
Спасибо, помогло, установил версию pydantic==1.10.8 , как у вас на гитхабе указанно, все заработало. Теперь для практики напиши парсер пользуясь тем, что изучил на данный момент.@@the_parse_hub
@Константин-ю8ш5т
@Константин-ю8ш5т Жыл бұрын
Вот замиюсь парсингом, отличное видео! вот только у меня почему то пишет путь в ссылке а не описание
@the_parse_hub
@the_parse_hub Жыл бұрын
Как оказалось есть различия в ru и by версиях. Посмотрите следующие видео в этом плейлисте, там я показываю многие интересные моменты
@Константин-ю8ш5т
@Константин-ю8ш5т Жыл бұрын
@@the_parse_hub па спасибо
@EvgeniySakharov
@EvgeniySakharov Жыл бұрын
Здравствуйте. Вопрос автору ролика: Как можно посчитать дату доставки из этого json? В нем есть вот такие строки: 'time1': 22, 'time2': 74, 'dist': 1352,. Я так понимаю именно они отвечают за дату доставки. Получается приблизительная дата, но это ни то. Ни могу понять, как посчитать. Что касается ролика, подписан давно. дифирамбы петь не умею, буду краток - СУПЕР! Через ваши ролики начал понимать ООП. Огромное спасибо и куча + к Вашей карме..
@the_parse_hub
@the_parse_hub Жыл бұрын
Спасибо! Насчет даты доставки: глубоко в этом направлении я не копался, да и задачи у меня такой не было. Но, насколько я помню, там в js скриптах (что-то типа delivery_service.js) можно найти функцию вычисления даты доставки, на вход функция принимает 2 значения (часы и дни), делает несколько проверок и выдает дату в человекочитаемой формате. Поэтому смею предположить, что time1 - это часы, time2 - дни или наоборот (но что-то они подозрительно большие у Вас). Еще раз повторю - это только мои предположения и я в них не уверен
@sainco3036
@sainco3036 Жыл бұрын
👍
@АнтонАликин-к5ь
@АнтонАликин-к5ь 9 ай бұрын
Здравствуйте, уже который день пытаюсь настроить ваш код, что бы давал возможность вставлять не одну, а допустим несколько ссылок для парса, что бы выводило все в одну таблицу. Можете подсказать как это сделать?
@the_parse_hub
@the_parse_hub 9 ай бұрын
Изменить логику скрипта: т.е сначала сделать парсинг всех ссылок, потом сложить все результаты в один и уже сохранить
@Loelir
@Loelir Жыл бұрын
Спасибо! Это очень круто! А что учитывать в коде при парсинге раздела "Компьютеры и моноблоки" на Вайлдберриз? Я учусь на аналитика данных, и у меня горит диплом, потому что не получается собрать id, название, цену, количество продаж, рейтинг компьютера, продавца, рейтинг продавца, технические характеристики, диагональ компьютера.
@the_parse_hub
@the_parse_hub Жыл бұрын
Спасибо! Для начала посмотрите вторую часть данного видео kzbin.info/www/bejne/oWSzZZ-or9-rpKs&ab_channel=TheParseHub, там идет сбор всех товаров одного продавца, заодно увидите где там рейтинг находится. Количество продаж, насколько я помню, идет отдельным запросом
@Loelir
@Loelir Жыл бұрын
@@the_parse_hub написала вам на почту
@ruvensambora
@ruvensambora 11 ай бұрын
всё очень доступно и подача класс! хотелось бы парсер розетки и хотлайна увидеть)
@Joyyyl
@Joyyyl 3 ай бұрын
Здравствуйте! Делала всё как в видео, однако выдает ошибку, возможно ли дело в том, что ссылка на каталог различается от вашего? У меня она почемуто catalog?abtesting=false и почему-то вместо brandpage , там чисто brand. Хоья содержание точно такое же. В чём может быть проблема?
@Dan-by1rd
@Dan-by1rd Жыл бұрын
Решил тоже сделать парсер, наткнулся на ваш ролик, один из самых толковых на ютубе. Не подскажете как спарсить картинки?
@the_parse_hub
@the_parse_hub Жыл бұрын
Спасибо! Буквально через пару дней выйдет новое видео про WB, там я затрону все вопросы про которые спрашивали в комментариях (про картинки тоже будет)
@the_parse_hub
@the_parse_hub Жыл бұрын
Вот видео про это: kzbin.info/www/bejne/eGnRqYGBbraIZsU
@Dan-by1rd
@Dan-by1rd Жыл бұрын
@@the_parse_hub спасибо
@igorigorev8414
@igorigorev8414 Жыл бұрын
Нужно снять про амазон
@the_parse_hub
@the_parse_hub Жыл бұрын
амазон интересный, но большой) что конкретнее там искать?
@Loony666Noob
@Loony666Noob 8 ай бұрын
Правильно понимаю, что один раз используя curl запрос мы автоматически получаем хедеры и параметры запроса, с помощью которых делаем запрос на API -> получаем JSON ответ и просто разбираем его. А если вдруг понадобится парсинг 50 страниц, то просто добавляем в словарь params параметр page и потом его инкрементируем и посылаем также запросы, разбирая данные от json словарика. Верно? А если заказчик захочет спарсить другую категорию, то curl запрос видоизменится же и парсер перестанет работать? В таких случаях заказчик за небольшую копеечку может попросить его починить для другой категории или как это всё происходит на фрилансе? (Новичок, ни разу не брал заказов еще, интересны эти моменты =) )
@the_parse_hub
@the_parse_hub 8 ай бұрын
1-я часть - суть поняли правильно. 2-я часть про заказы, здесь всё зависит от конкретного заказа. Кому-то нужно регулярно парсить какой-то один конкретный магазин\категорию\бренд и т.д. , кому-то нужен универсальный парсер, типа такого: kzbin.info/www/bejne/fp-pfXl4lpekjJI , где почти любую ссылку вставил и получил результат. По-разному бывает
@Loony666Noob
@Loony666Noob 8 ай бұрын
@@the_parse_hub Ага, понял, спасибо большое за разъяснение!
@EvgeniySakharov
@EvgeniySakharov Жыл бұрын
Круто! Снимаю шляпу. Взорвите свой канал. Просто, напишите в названии видео три заглавные буквы ООП! Ну правда. Задолбали уже эти собачки да кошечки в ООП. Ну ведь ни чего не понятно. А тут живой парсер. Пожалуйста, подписывайте ООП. Я подписан и лайк поставлен. А, еще роботы задолбали.
@misterbobrust
@misterbobrust Жыл бұрын
бот
@ЕвгенСахаров
@ЕвгенСахаров Жыл бұрын
@@misterbobrust Что значит бот? Кому это адресовано?
@misterbobrust
@misterbobrust Жыл бұрын
@@ЕвгенСахаров скрипт
@Константин-ю8ш5т
@Константин-ю8ш5т Жыл бұрын
​@@misterbobrustпо скрипту идёшь?
@Fgu-ynP-3vbzI-56
@Fgu-ynP-3vbzI-56 Жыл бұрын
Благодарю - бесплатная версия PyCharm для этих целей подойдет?
@the_parse_hub
@the_parse_hub Жыл бұрын
Конечно
@thepowerofthought4151
@thepowerofthought4151 8 ай бұрын
Как создать парсер с Букмекерской Конторы,который создает сопротивление?
@the_parse_hub
@the_parse_hub 8 ай бұрын
какое сопротивление?
@日向ヒナタ-f4o
@日向ヒナタ-f4o Жыл бұрын
Приветствую Вас! Можете разъяснить 2 момента: при запуске СПИСАННОГО кода изменённого под РУ версию WB выдаёт "RequestsJSONDecodeError" и получившийся файл не раскодируется под читаемый формат. И как я могу посмотреть этот файл json с которого мы выбираем пункты(id/brand/sale/...) в VSCode(Если вы можете конечно , а то у вас PY CHARM , а я с этой студией доматался😃😃)
@the_parse_hub
@the_parse_hub Жыл бұрын
Добрый день! Оказалось, что в версии RU и BY есть некоторые отличия, чтобы окончательно не запутаться, я снял вторую часть про WB, там где уже забираем все товары одного продавца и делал это на RU версии. Может это Вам поможет: kzbin.info/www/bejne/oWSzZZ-or9-rpKs
@日向ヒナタ-f4o
@日向ヒナタ-f4o Жыл бұрын
@@the_parse_hub попробовал скопировать ваш код с гитхаба, не работает. Думаю , что дело всё-таки в JSON encoder , которого у меня в VSCode - видимо нет.
@日向ヒナタ-f4o
@日向ヒナタ-f4o Жыл бұрын
​@@the_parse_hub , так же хочу поблагодарить Вас, за предоставленную информацию. Подписался на вас в гитхабе/ютубе❤ Если есть ещё площадки с вашим трудом , закрепите их пожалуйста где либо. Очень заинтересовали своей подачей, желаю дальнейших успехов и развития!👍👍👍👍👍
@ТибальтСладкоголосый
@ТибальтСладкоголосый Жыл бұрын
В vs code возможно есть какой то плагин для просмотра json, но я просто сохранял его и открывал, как отдельный файл
@the_parse_hub
@the_parse_hub Жыл бұрын
@@ТибальтСладкоголосый Я не пользуюсь vs code, но плагины для работы с json в нем явно есть, вот например marketplace.visualstudio.com/items?itemName=ClemensPeters.format-json
@connect_with_wolf
@connect_with_wolf Жыл бұрын
Целый день смотрю это видео.))) Пытаюсь сделать тоже самое. Но я это делаю с русским WB. А русский и белорусский WB - это разные вещи оказывается. У русского сайта брэнд пишется msi и есть литерал (у вас 27445 и без литерала). Я посмотрел и увидел на сайте файл msi.json (в том же месте: network>xhr ). В нем вся инфа. Но как его скачать пока не понятно...
@the_parse_hub
@the_parse_hub Жыл бұрын
В ру версии ВБ id бренда нигде не видно на сайте, а в бел версии он есть, но это не повод думать, что ВБ победил) Есть простой вариант его узнать: response = requests.get('static.wbstatic.net/data/brands/asus.json') brand_id = response.json()['id'] Вместо asus просто подставьте свой бренд. И кстати примерно через час будет новое видео про WB
@connect_with_wolf
@connect_with_wolf Жыл бұрын
@@the_parse_hub Спасибо, Друг....))))))) Все получилось!!!!!!!!!
@latyp3116
@latyp3116 Жыл бұрын
Приветствую! Написал парсер для вб по данному примеру для каталога товаров, при открытии csv файла обнаружил, что на каждый объект приходит в среднем около 4000 объектов с одинаковым id и другими атрибутами. Есть ли возможность в конечном файле видеть только уникальные объекты, не применяя запросы и или фильтры (для файла xls)?
@the_parse_hub
@the_parse_hub Жыл бұрын
Скорее всего один товар может быть в разных категориях, наверное из-за этого такое случается. Как вариант, можно использовать set при сохранении или хранить список всех уже сохранённых товаров. Также можно сохранять в БД с уникальным полем id
@bozh5407
@bozh5407 3 ай бұрын
Здравствуй. Пожалуйста, можете подсказать. Например я вбил в поисковик товар. Отображается кнопка «фильтры». Как мне спарсить эти фильтры и его значения. По типу - Цвет: красный, желтый. Можете просто направить меня, указать?
@the_parse_hub
@the_parse_hub 3 ай бұрын
Направить могу, вот пример запроса: catalog.wb.ru/catalog/tops_tshirts1/v6/filters?ab_testing=false&appType=1&cat=8142&curr=rub&dest=-3626404&spp=30 Данный запрос возвращает json с доступными фильтрами для категории tops_tshirts1 с id=8142
@bozh5407
@bozh5407 3 ай бұрын
@@the_parse_hub Спасибо. На самом деле я поспешил с вопросом тогда. Сам заметил пока поковырялся с валберисом. А вот с озоном не получилось что то подобное найти. Может ты видишь там что нибудь подобное? Спасибо еще раз
@the_parse_hub
@the_parse_hub 3 ай бұрын
В озоне конечно есть такое, но подсказывать я не буду, это мой хлеб)
@orozking
@orozking Ай бұрын
Здарова, очень познавательно. У меня вопрос, смог ли ты обойти 429 too many requests. Пытаюсь разом получить 10к товаров. Менял headers user agent и использовал прокси, не помогает. Может у тебя есть решение ?
@the_parse_hub
@the_parse_hub Ай бұрын
Дай угадаю, эта ошибка возникает на запросе примерно после 50-й страницы?
@ДворецкийЕвгений
@ДворецкийЕвгений Жыл бұрын
Здравствуйте, как на счет количества покупок не понял как называется индекс, подскажите пожалуйста? Или это расчетное число исходя из убывания остатков?
@the_parse_hub
@the_parse_hub Жыл бұрын
Спасибо! Буквально через пару дней выйдет новое видео про WB, там я затрону все вопросы про которые спрашивали в комментариях
@somebody5186
@somebody5186 Жыл бұрын
Здорово. А для просмотра кода на сайте нужна именно версия ПРО или обычного F12 достаточно ? А то получить эту ссылку с каталогом не получилось. Я только делаю первые шаги в этой области. Спасибо.
@the_parse_hub
@the_parse_hub Жыл бұрын
Для просмотра кода на сайте нужен обычный браузер . А если Вы имели ввиду PyCharm, то бесплатной версии хватит с головой. Ну а если захочется большего, а денег нет, всегда можно побыть пиратом
@Константин-е5л7ь
@Константин-е5л7ь Жыл бұрын
Спасибо за урок. Двоякое чувство. с одной стороны разбираете элементарнийшие вещи (гет запрос + парсинг json) что подразумевает очень низкий уровень зрителя, с другой делаете это через через кучу классов, и библиотек, разбавив это декоррированием... Очень спорный подход для понимания новичком.
@the_parse_hub
@the_parse_hub Жыл бұрын
Спасибо за комментарий! Я заранее понимаю, что всем не угодишь, но объясню свою точку зрения на это. Я стараюсь не только показать, как можно написать парсер WB(get запрос и json), но и как использовать какие-то другие инструменты для улучшения кода. В этом видео, к примеру, это был Pydantic. В видео по решение капчи через нейросети использовал наследование в ООП и т.д. Причем заметьте, это всё показываю на именно реальных примерах с реальной задачей (а не на абстрактных котиках-собачках) и не затрагиваю сразу весь функционал, чтобы зритель не подумал: какой-то сложный этот Pydantic, ну его нафиг. Ну и судя по соотношению лайков\дизлайков такое положение дел устраивает 99.3% зрителей. PS: этот канал еще очень молодой и и всё может поменяться)
@Константин-е5л7ь
@Константин-е5л7ь Жыл бұрын
@@the_parse_hub Спасибо за ответ. Я понял вашу точку зрения.
@nohtyp_gniyduts838
@nohtyp_gniyduts838 Жыл бұрын
как поступить в ситуации, когда захожишь на динамический сайт под своим аккаунтом, копируешь cURL. далее конвертирует его и работаешь с информацией на сайте. А сайт настроен так, что через некоторое время он тебя деавторизирует и всю игру с копированием приходится повторять сначала. Если я правильно понимаю куки работают только некоторое время. Возможно ли это обойти?
@the_parse_hub
@the_parse_hub Жыл бұрын
Как правило, при авторизации выдаётся токен, который живет определенное время, после чего его нужно получить заново. Т.е. нужно найти POST запрос который отправляет логин+пароль на сервер и получает токен. Естественно, на разных сайтах это может быть реализовано по-разному
@nohtyp_gniyduts838
@nohtyp_gniyduts838 Жыл бұрын
@@the_parse_hub те избежать ручного копирования cURL и его конвертации с последующим добалением в код не получится?
@tokosotomimo14
@tokosotomimo14 9 ай бұрын
конечно можно было бы гораздо проще сделать без классов и моделей, но так тоже нормально
@the_parse_hub
@the_parse_hub 9 ай бұрын
Конечно можно
@uuuxi
@uuuxi 4 ай бұрын
подскажет может кто, нету параметров limit теперь, как искать по страницам то
@the_parse_hub
@the_parse_hub 4 ай бұрын
page=x в параметрах, где x - нужная страница
@uuuxi
@uuuxi 4 ай бұрын
@@the_parse_hub попробовал, ниче не меняет почемуто
@uuuxi
@uuuxi 4 ай бұрын
@@the_parse_hub простите работает это я дебил спасибо вам огромное
@the_parse_hub
@the_parse_hub 4 ай бұрын
бывает, пожалуйста
@leksmut
@leksmut Жыл бұрын
Добрый день, а если надо парсить личный кабинет (заказы) т.е. под логином вайлбериз. Таким методом наверно не получится? Есть ли на стороне браузера расширения автоматизации для обхода страниц авторизованным пользователем? Кстати цены на карты могут отличаться для залогиненного пользователя и для анонимного гостя как в вашем случае.
@the_parse_hub
@the_parse_hub Жыл бұрын
Это можно решить таким же способом, т.е через requests или selenium
@ДжонСмит-ч5ь
@ДжонСмит-ч5ь Жыл бұрын
под selenuim логинишься (куча в инете примеров) и дальше парсишь,
@stopweighttv8382
@stopweighttv8382 Жыл бұрын
@@the_parse_hub при запросе через Postman вношу в Headers токен (Bearer) и куки (взял из dev tools после авторизации на WB), но не получается из-под Postman авторизоваться (при этом статус ответа 200). В какую сторону копнуть, где может быть проблема? Или может запишите короткое видео на эту тему?
@the_parse_hub
@the_parse_hub Жыл бұрын
@@stopweighttv8382 Я подозреваю, что дело может быть во времени жизни токена, но может быть и не только. В следующем видео про WB постараюсь показать данный момент
@stopweighttv8382
@stopweighttv8382 Жыл бұрын
@@the_parse_hub беру актуальный токен (захожу позже с браузера, токен тот же). Подозреваю, что прописываю headers в запрос Postman неверно. Подскажите, когда планируете видео записать?
@СмнРмнв
@СмнРмнв Жыл бұрын
Здравствуйте, спасибо за контент! Можете подсказать как исправить ошибку : brand_id = re.search(regex, url)[0] ~~~~~~~~~~~~~~~~~~~~~^^^ TypeError: 'NoneType' object is not subscriptable
@the_parse_hub
@the_parse_hub Жыл бұрын
Добрый день! В ру версии ВБ id бренда нигде не видно на сайте, а в бел версии он есть, но это не повод думать, что ВБ победил) Есть простой вариант его узнать: response = requests.get('static.wbstatic.net/data/brands/asus.json') brand_id = response.json()['id'] Вместо asus просто подставьте свой бренд. Можете просто вставить данную ссылку в браузер и посмотреть, что он отдает
@СмнРмнв
@СмнРмнв Жыл бұрын
@@the_parse_hub Спасибо))
@ВладЛавров-г4й
@ВладЛавров-г4й Жыл бұрын
внутренность сайта Wildberries
@antioffz
@antioffz Жыл бұрын
40:48 30 строка 1 табуляция лишняя(
@the_parse_hub
@the_parse_hub Жыл бұрын
Ну это мелочи
@Roma-so1qo
@Roma-so1qo Жыл бұрын
это плагин такой? я не могу так json открыть
@the_parse_hub
@the_parse_hub Жыл бұрын
Возможно эта фишка есть только в pro версии PyCharm, нет под рукой бесплатной версии чтобы проверить. Можете попробовать поискать плагин или пользуйтесь Postman
@vna2re2pac39
@vna2re2pac39 4 ай бұрын
может кто подскажет, нужно достать ссылку на товар бренда, в джсоне эта инфа не приходит, что делать?
@the_parse_hub
@the_parse_hub 4 ай бұрын
Вот ссылка на товары бренда: catalog.wb.ru/brands/l/catalog?appType=2&brand=107112&curr=rub&dest=-1275608&regions=80,38,83,4,64,33,68,70,30,40,86,75,69,1,31,66,110,48,22,71,114&sort=popular&spp=35&page=1 Вместо brand=107112 подставьте своё
@vna2re2pac39
@vna2re2pac39 4 ай бұрын
@@the_parse_hub но это какой то json, на нужна карточка товара. Не важно я с этим уже разобрался. Появилась новая проблема) На момент записи видео id бренда было везде, а сейчас встречаются /brands/[название-бренда] без айди, не могу понять как достать айди в таких случаях. Буде благодарен если выручишь
@vna2re2pac39
@vna2re2pac39 4 ай бұрын
бывает даже моменты когда айди стоит после названия бренда. это в случаях если на площадке 2 бренда с одинаковыми названиями
@the_parse_hub
@the_parse_hub 4 ай бұрын
static-basket-01.wbbasket.ru/vol0/data/brands/telodvizheniya.json Вместо telodvizheniya подставить название нужного бренда
@vna2re2pac39
@vna2re2pac39 4 ай бұрын
@@the_parse_hub спасибо большое
@АлександрРуденко-н9ж
@АлександрРуденко-н9ж 20 күн бұрын
Читаю видео и такое чувства что одни боты пишут по типу "вау круто наконец-то нашел"и.т.п.Что нашли то?пересмотрел 234 видео по парсингу на питоне и во всех одно и тоже авторы прямиком в скрипт без каких либо огласок зачем нужны кавычки где нужно ставить,без разъяснения того или иного действия.Если получится мне выучить эти функции и предположу что все получится и дойти до верха то сделаю видео не о том как тупо писать и повторять нужно за автором а разъясню сначало на пальцах примитивные примеры хотя бы где для начала ставятся кавычки пробелы равно и.т.п и для чего они нужны.
@the_parse_hub
@the_parse_hub 20 күн бұрын
Ты перепутал видео, это уроки по парсингу, а не по основам питона. Где ставить кавычки, пробелы и прочие примитивные примеры уже нужно знать для нормального понимания этого видео
@СиняяСобаченка
@СиняяСобаченка 7 ай бұрын
Уже не работает код к сожалению, изменили структуру URL
@the_parse_hub
@the_parse_hub 7 ай бұрын
Бывает, в парсинге иногда что-то меняется. Но главное же не код в данном случае, главное - понять как это всё работает
@ДжонСмит-ч5ь
@ДжонСмит-ч5ь Жыл бұрын
Только сейчас заметил что автор нигде вроде не использовал BeautifulSoup)
@the_parse_hub
@the_parse_hub Жыл бұрын
Всё верно, пока его не использовал. Но дойдет очередь и до BeautifulSoup
@diatm1506
@diatm1506 Жыл бұрын
beautifulsoup, lxml, selenium, proxy тут и не нужны)
@diatm1506
@diatm1506 Жыл бұрын
@@the_parse_hub может onlinetrade? Там потруднее будет)
@ЭдуардЭфклидов
@ЭдуардЭфклидов Жыл бұрын
Сколько занимаетесь программированием?
@the_parse_hub
@the_parse_hub Жыл бұрын
Сложно ответить точно. Помню, что начинал учить Python в году 2017, но далеко не всё это время занимался программированием
@ЭдуардЭфклидов
@ЭдуардЭфклидов Жыл бұрын
@@the_parse_hub вы лютой, сам осознанно изучаю месяц только)
@the_parse_hub
@the_parse_hub Жыл бұрын
@@ЭдуардЭфклидов значит все впереди. Главное постоянно искать как применить изученную теорию на практике и всё будет хорошо
@karandalliik
@karandalliik Жыл бұрын
На самом деле здорово. Давно думал вб по парсить, часто на биржах запросы есть. Ооп уже используется по полной и теперь постоянно, а вот датаклассы и пайдентик, тем более, еще учить и учить. Интересно сделано, мой мозг, поа, не все понимает как, но все же понимает. На вб есть вообще блоки на парсинг какие? Айпи, заголоки, подписи какие в запросах? Может проще снифать приложение андроид и уже делать парсинг по апи запросам ? - чаще всего там совсем чуть чуть данных туда сюда гоняется и запросы быстрее, хотя, сам еще не снифал вб и хз есть ли там защита какая в коде апк... Интересно тоже же) А там декомпиляция, поиск всех защит, снятие, компиляция и все очень весело)))
@the_parse_hub
@the_parse_hub Жыл бұрын
Спасибо! Насчет парсинга через api - так я же именно его и использую в данном видео. Насчет защиты - её на ВБ нет
@karandalliik
@karandalliik Жыл бұрын
@@the_parse_hub Как же? Вы брали именно в стеке только xhr запрос - разве это апи ? Приложение все таки чуть по другому работает. Если по снифаете, то увидите как там все проще. Конечно, зависит от приложения, но, чаще всего, запросы там проще
@the_parse_hub
@the_parse_hub Жыл бұрын
@@karandalliik Это и есть именно api. В приложении +- будет всё также. Я сильно сомневаюсь, что в приложении ВБ решили прописать другие пути получения данных. Да и куда уже проще чем здесь? Кстати советую посмотреть вторую часть данной темы, может станет немного понятнее: kzbin.info/www/bejne/oWSzZZ-or9-rpKs&ab_channel=TheParseHub
@karandalliik
@karandalliik Жыл бұрын
@@the_parse_hub Ок. Спасибо Гляну Общение apk с сервером значительно веселее
@the_parse_hub
@the_parse_hub Жыл бұрын
@@karandalliik Согласен, сама тема с apk интересная, но пока не было у меня еще такой задачи
@dicloniusN35
@dicloniusN35 Жыл бұрын
орехи сложнее спарсить чем видеокарты)
@the_parse_hub
@the_parse_hub Жыл бұрын
может быть) на орехи у меня пока заказа не было
@TheStrix1
@TheStrix1 Жыл бұрын
у авторизированных пользователей цена будет всегда другой - почему это в видео не продумали ((
@the_parse_hub
@the_parse_hub Жыл бұрын
В одном видео всё не предусмотришь, уже есть 2 часть данного видео, где показан парсинг всех товаров одного продавца. На очереди другие видео по данной тематике, про авторизацию тоже будет
@qevinskvad9012
@qevinskvad9012 Жыл бұрын
Давай отслеживание цен продавцов. И парсинг на сокетах
@the_parse_hub
@the_parse_hub Жыл бұрын
Сформулируйте идею насчет отслеживания цен конкретнее, как это должно выглядеть?
@qevinskvad9012
@qevinskvad9012 Жыл бұрын
@@the_parse_hub на фрилансе часто видел как просят поставить парсинг цен товаров конкретного продавца конкурента и создать алгоритм который будет чуть снижать цену
@the_parse_hub
@the_parse_hub Жыл бұрын
@@qevinskvad9012 Согласен, задача интересная, правда здесь явно нужен доступ в личный кабинет продавца, чтобы можно было автоматически ставить цену. Но если стоит задача в выгрузке всех товаров конкретного продавца с ценами, остатками и пр., то да, это я планирую показать
@qevinskvad9012
@qevinskvad9012 Жыл бұрын
@@the_parse_hub у меня вопрос. На сайте стоит защита от ботов (типо cloud flare) я обошел ее с помощью undetected chrome driver, там товаров около 200тыс нужно спарсить в Эксель, но насколько я помню undetected chrome driver это надстройка над силениумом, а значит он медленный, как решить это чтоб я не ждал 2 дня парсинг 😄
@the_parse_hub
@the_parse_hub Жыл бұрын
@@qevinskvad9012 использовать несколько процессов к примеру, ну а лучше все таки искать api
@blackspace9538
@blackspace9538 Жыл бұрын
Круто, но sale в данном случае обозначает процент скидки, а не кол-во продаж
@the_parse_hub
@the_parse_hub Жыл бұрын
Перепроверил информацию, Вы правы! Спасибо! В следующем видео про WB обязательно сообщу про эту ошибку и сейчас обновлю информацию в закрепленном комментарии
@adexitum
@adexitum Жыл бұрын
@@the_parse_hub Забыл закрепить коммент)
@the_parse_hub
@the_parse_hub Жыл бұрын
@@adexitum Почему? Это есть в закрепленном комментарии, просто он может быть только один, поэтому добавил информацию в него
@КИТРостов
@КИТРостов 4 ай бұрын
бред, заказчики парсинга каке то нищеброды, стока гемора, из-за трех копеек. соревнуются в цене на товары, потом продают всякие какассски, поскольку рентабельность не позволяет качественно работать.
@АндрейИльин-д6ж
@АндрейИльин-д6ж Жыл бұрын
реклама вилдбериес
@the_parse_hub
@the_parse_hub Жыл бұрын
Меня раскусили) Wb с посещаемостью 10 млн в день нашёл мой канал, у которого 470 подписчиков и заказал на нем рекламу
@rosimport
@rosimport Жыл бұрын
@@the_parse_hub 🤣🤣🤣 Не, это не вас раскусили. А Wild Berries. Секрет их успеха.
@soleyfan
@soleyfan Жыл бұрын
Третий раз перезаливаю коммент, потому что его по необъяснимым мне причинам удаляет сам ютуб. Если брать русскую версию сайта ВБ, а не белорусскую, то после ссылки на сам сайт там идет "/brands/msi/all", а не "/catalog?brandpage=27445__MSI". Как и где в таком случае брать айди бренда в ссылке которую нам будет передавать пользователь?
@the_parse_hub
@the_parse_hub Жыл бұрын
Кстати да. Очень интересный момент. В ру версии ВБ id бренда нигде не видно на сайте, а в бел версии он есть, но это не повод думать, что ВБ победил) Есть простой вариант его узнать: response = requests.get('static.wbstatic.net/data/brands/asus.json') brand_id = response.json()['id'] Вместо asus просто подставьте свой бренд
@soleyfan
@soleyfan Жыл бұрын
​@@the_parse_hub спасибо)
@pampampam12
@pampampam12 Жыл бұрын
@@the_parse_hub пишет, что запрошенной страницы не существует(
@Михаил-ы7п
@Михаил-ы7п Жыл бұрын
Может быть кто-то может объяснить что означают остальные значения в том json файле, к которому мы обращаемся? brand: "MSI" //Название бренда brandId: 27445 //ID бренда colors: [] //? цвет diffPrice: false //? dist: 47 //? feedbacks: 0 //Кол-во отзывов id: 135479545 //ID товара, используется для построения ссылки на товар kindId: 0 //? ksort: 51000 //? log: {promoAmount: 0} //? logisticsCost: 0 //? name: "Ноутбук GF63 Thin 11UD-254XRU 15.6\" i5-11400H 8 256Гб" //Название товара panelPromoId: 160544 //? pics: 11 //Кол-во изображений priceU: 8818000 //Цена без скидки promoTextCard: "ЛЕТНИЕ СКИДКИ" //? наименование акции promoTextCat: "ЛЕТНИЕ СКИДКИ" //? наименование акции rating: 0 //Рейтинг целое число, показывается звездами reviewRating: 0 //Рейтинг число с плавающей точкой root: 116200439 //? sale: 21 //Процент скидки saleConditions: 11 //? salePriceU: 6966200 //Цена со скидкой siteBrandId: 37445 //? sizes: [{name: "", origName: "0", rank: 0, optionId: 231667230, wh: 119261,…}] //? размеры subjectId: 2290 //? subjectParentId: 6238 //? supplierId: 81939 //ID продавца time1: 16 //? time2: 22 //? volume: 206 //? количество товара __sort: 86452 //? Если кто-то что-то знает, пишите - буду дополнять
@ДворецкийЕвгений
@ДворецкийЕвгений Жыл бұрын
volume: 206, это вот мне не очень понятно. Если парсить именно инфу в карточке товара, там будет количество товара и раскладка/наличие по складам, так вот эти числа не совпадают, предполагаю, не понимаю что это за объём.
@Joyyyl
@Joyyyl 3 ай бұрын
Здравствуйте! Делала всё как в видео, однако выдает ошибку, возможно ли дело в том, что ссылка на каталог различается от вашего? У меня она почемуто catalog?abtesting=false и почему-то вместо brandpage , там чисто brand. Хоья содержание точно такое же. В чём может быть проблема?
@the_parse_hub
@the_parse_hub 3 ай бұрын
Добрый день. С момента записи данного видео прошло уже много времени. Api с тех времен немного поменялся, но принцип остался тот же
Парсинг динамических сайтов | selenium python
43:00
Алексей Куличевский
Рет қаралды 14 М.
Парсер сайтов с выдачи гугл по ключевому запросу (2025)
7:37
Разработка ботов для бизнеса
Рет қаралды 145
Муж внезапно вернулся домой @Oscar_elteacher
00:43
История одного вокалиста
Рет қаралды 7 МЛН
Парсим товары Ozon с помощью Python
33:23
Евгений Лукин
Рет қаралды 23 М.
Используем ChatGPT API бесплатно с Python
13:51
The ParseHub
Рет қаралды 174 М.
Скрейпинг сайтов с помощью библиотеки Selenium
21:10
Мастерская Важных историй
Рет қаралды 42 М.
Парсинг динамического сайта | Wildberries
20:16
Муж внезапно вернулся домой @Oscar_elteacher
00:43
История одного вокалиста
Рет қаралды 7 МЛН