Как парсить динамические web сайты в Python. Beautiful soup 4.
HTML-код
- Опубликовано: 28 сен 2024
- Парсить динамический web-страницы немного сложнее чем статические. Но и интересней. Давай посмотрим на некоторые нюансы.
• Как парсить статически... - парсинг статических сайтов
• Работа с HTTP в Python... - библиотека requests
#Python #парсинг #beautifulsoup #parse #курс
Спасибо, очень полезный материал. Пожалуйста, не останавливайтесь )
спасибо за отзыв
У меня просьба, меньше по памяти, больше на расжовывание. Контент очень интересный, перешёл на него с ПайтенХабСтудио и понимаю, что тут быстрее подача информации, но из-за скорости и иногда отсутствия параллельной перебежи мёду скриптом и сайтом приходится все останавливать и юзать назад
Это не совсем динамическая страница) вернее для парсера это одно и тоже что на прошлом видео что на этом. Было бы крайне интересно посмотреть как грабаить страницы после выполнения на них javascript
это очень даже динамическая страница. ибо она формируется на стороне сервера из информации (предположительно из базы данных) и файла шаблона, который покрывает подобные отображения рейтингов игроков по разным критериям. Beautiful Soup не умеет запускать js скрипты, однако, в некоторых случаях это можно компенсировать исследовательской работой и шевелением мозгов. именно об этом данное видео
Я так понимаю, для выполнения js запросов обязательно нужен движок браузера? нет ли библиотеки, которая умеет это делать из коробки?
Вопрос возник не просто так - наткнулся на сайт, где для получения данных используется сложные post запрос с динамическим телом, и не хотелось бы пожизненно обслуживать такой парсинг.
@@snake-- вопрос не праздный. действительно было бы круто иметь такой инструмент. это сократило бы очень много времени и нервов. не исключаю, что есть какие-то библиотеки, которые способны удерживать соединение и эмитировать работу браузера. но мне они не известны. пока что....
@@snake-- Возможно тебе нужна библиотека selenium
@@snake-- selenium умеет эмулировать запуск JavaScript кода, но селениум это не bs :)
А как сделать так, что бы парсить сообщения с чата? То есть как парсить сообщение которые уже есть я знаю, а вот как сделать, что бы оно в режиме реального времени парсило каждое новое сообщение?
нашли ответ?
Нашли ответ?
Здравствуйте, я очень извиняюсь за возможно тупой вопрос, а может парсер - работать в режиме event listener🤔?
Чтобы "поселить" парсер на форум, и чтобы парсер сообщал о наиболее активных темах, типа "на ветке велосипеды за последний час появилось 9 сообщений". Как такое сделать 🤔?
Специально удалил код с описания, чтобы больше просмотров было?
Прочитал в заголовке парсинг динамического сайта и рассчитывал увидеть парсинг страниц подгружаемых с помощью javascript.
в принципе, в некоторых отдельных случаях при условии проведении глубокого анализа архитектуры приложения возможно и такое
Спасибо друже
на здоровье
Очень будет интересно увидеть материал по парсингу сайтов на ajax. Если есть опыт в этой области, запиши пожалуйста :)
по сути никаких отличий. запросы нужно будет отправлять на те эндпоинты, на которые отправляются ajax-запросы
@@SweetCoder попытался разобрать сайт днс. И чёт не получилось :) от него приходит только скрипт.
@@hackoffme Здравствуйте. У меня такая же проблема. Только с магазином Ок. У вас получилось решить данную проблему?
а если в процессе обработки страниц данные в БД изменятся (например какая-то запись перейдёт с последней страницы на первую). как гарантировать обработку всех записей?
если коротко - то никак. для волатильных данных имеет смысл запускать считывание как можно чаще, учитывая предрасположенность данных к изменяемости
@@SweetCoder повторные считывания - это понятно. проблема в том что во время считывания можно пропустить данные: например если одна запись с первой страницы удалилась, при считывании очередной страницы мы потеряем одну запись (она сдвинулась на предыдущую страницу).
@@andrew_z. это понятно, но волшебных палочек ещё не придумали
У меня вопрос, а как сложно запарсить например алиэкспер, при этом получив url картинки товара, его описание и цену?
вообще не сложно. и картинки, и описание, и цена - всё парсится без проблем
@@SweetCoder прикол в том что после начала парсинга, меня перекидывает на страницу с капчей, такое чувство что Алик просто блокирует парсинг
ну у тебя два варианта: либо найти способ обойти капчу, либо сдаться
@@SweetCoder логично
Спасибо
на здоровье
Это всё конечно хорошо, но никто не приводит примеров как парсить aspx сайты.
да ровно также, как и все остальные
Нда...
Моща...
Не по стесняюсь добавить, что от этой смеси мощи python + bs + знание как использовать html как дерево + CSS = у меня даже чуть привстал....
Очень круто.
Даже при параллельном написании кода ошибок наделал потрясающих и нашел решение.
Получил ответ на один вопрос. Это отлично.
И нашел еще 100 вопросов без ответа - а вот это ахуенно)))
Вы Молодец!!!
спасибо за отзыв и яркое описание впечатлений. но в следующий раз воздержись от использования нелитературных выражений. на канале иногда бывают женщины и дети
классные уроки, очень понятно и приятно
спасибо за отзыв
Как спарсить Яндекс Дзен?? Он бля особенный какой-то
Спасибо. Но даже в многостраничных списках есть хоть какие-то признаки страниц. А как быть, если страница сразу не выходит, а появляется только часть? Остальная часть списка появляется только при скроллинге Например это видно на просмотре членов групп в "одноклассниках" и "вконтакне
никак. скрапер не может заскрапить то, чего ещё нет, что появляется после ajax-запроса отправленного после скролла страницы. в этом и заключается работа программиста... 😜
через риквест можно такое организовать, просто менять значение оффсета
если что ссылка на последнюю страницу тоже содержит номер последней страницы:)
Я думал только меня прет от парсинга))
иногда бывает очень полезно владеть таким навыком
спасибо! Не подскажите а как парсить олх и авито??
на здоровье. парсинг барахолок, онлайн-магазинов да и вообще любых сайтов принципиально ничем не отличается. всё то же самое.
@@SweetCoder наверное! Но вытащить из олх номер телефона не удается с помощью bs4 . Там какая то защита
а какой дедлайн для следующего видео?
Здравствуйте. А как парсить такие сайты? - ru.tradingview.com/chart/
В них нет возможности так легко прыгать, элементарно правая кнопка мыши работает по другому.
смотря какая информация нужна. конкретизируй вопрос.
"В них нет возможности так легко прыгать" - не уверен, что понимаю о каких прыжках идет речь.
"элементарно правая кнопка мыши работает по-другому" - а причем правая кнопка мыши к парсингу текстовых данных?