Простой парсинг сайтов на Python | requests, BeautifulSoup, csv

แชร์
ฝัง
  • เผยแพร่เมื่อ 14 พ.ย. 2024

ความคิดเห็น • 385

  • @beksultantoktobekov6098
    @beksultantoktobekov6098 4 ปีที่แล้ว +58

    Ахренеть , как вы просто каждое слово в коде объясняете и все нормальным языком. Здоровье вам ❤

  • @dmitryv6156
    @dmitryv6156 3 ปีที่แล้ว +43

    Отличная подача материал, но есть ряд замечаний:
    1. range(1, n) возвращает список начинающийся с 1 и заканчивающийся n-1, соответственно в Вашем случае нужно написать range(1, PAGINATION+1);
    2. функцию save_doc(cards, CSV) необходимо сдвинуть влево на уровень вышестоящего for. В текущем варианте записываемые в файл данные будут повторяться с нарастанием последующего прохода цикла парсера.
    PS Я понимаю, что автор легко нашел бы эти неточности в реальном проекте, но написал для тех, кто будет смотреть данное видео для обучения.

  • @mma_fighter
    @mma_fighter 3 ปีที่แล้ว +4

    Много профессионалов на ютубе, но мало кто может так подробно и понять объяснить материал. Спасибо !

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      Но я даже не профессионал))

    • @Veber-we4it
      @Veber-we4it 3 ปีที่แล้ว

      @@andrievskii Так ещё и скромный

  • @animegogogo5124
    @animegogogo5124 7 หลายเดือนก่อน +1

    За 1 час я понял как парсить, я думал это сложно, но оказываеться это не так сложно, понятно и дохотчиво объясняешь даже каджую мелочь, мало таких кто объясняют, Спасибо за курс! вы лучший!❤ Спасибо что есть такие люди!

    • @andrievskii
      @andrievskii  7 หลายเดือนก่อน

      Удачи в обучении, пусть все получится

  • @АртурТестов-л6д
    @АртурТестов-л6д 4 ปีที่แล้ว +20

    Спасибо, что рассказал абсолютно все, даже для диких чайников. Респект 👍

  • @erickwhite1195
    @erickwhite1195 4 ปีที่แล้ว +11

    лучшее видео по PYTHON, что я видел. Многие вещи стали понятными. Огромное спасибо! Надеюсь будут и дальше похожие видео)
    Однозначно лайк, подписка.

    • @dryuni
      @dryuni 7 หลายเดือนก่อน

      PythonToday посмотри, тоже чувак толковый

  • @Tommy7417
    @Tommy7417 ปีที่แล้ว +1

    Супер, дякую за відео, та детальне пояснення.

  • @Владимир-щ8н3ь
    @Владимир-щ8н3ь 3 ปีที่แล้ว +3

    Изумительное объяснение. Там где надо расставлены акценты. Спасибо!

  • @Bondik202
    @Bondik202 4 ปีที่แล้ว +8

    отличный урок ! мне нравиться что вы рассказываете о методах подробно .

  • @Evis9110
    @Evis9110 3 ปีที่แล้ว +9

    Мой первый парсер готов благодаря Вам, спасибо огромное)

  • @baluan_sholak
    @baluan_sholak 2 ปีที่แล้ว +1

    Спасибо за видео. Кстати у кого выдает ошибку UnicodeEncodeError, в with open добавьте encoding="utf-8-sig" (если вы работаете в виндовс). Будет выглядеть так: with open(path, 'w', newline='', encoding="utf-8-sig") as file:
    Отличное обучение для новичков, еще раз спасибо!

    • @МаркМалина
      @МаркМалина ปีที่แล้ว

      Не мог понять что делать с ошибкой, и тут ответ, спасибо)

    • @baluan_sholak
      @baluan_sholak ปีที่แล้ว +1

      @@МаркМалина знал, что пригодится

  • @cyber_ukraine
    @cyber_ukraine 3 ปีที่แล้ว +6

    Уважаемый АВТОР, вы гений!
    Я за все 5 лет обучения в универе получил в разы меньше знаний чем от часа просмотра этого видео!
    Ставлю колокольчик на будущие уроки!

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      Рад был помочь))

    • @TXADodje
      @TXADodje 3 ปีที่แล้ว +7

      Соболезную

  • @goodtrydemongg2033
    @goodtrydemongg2033 4 ปีที่แล้ว +2

    Самый лучший и понятный курс по парсингу который я встречал, красавчик!

    • @andrievskii
      @andrievskii  4 ปีที่แล้ว

      Спасибо, очень приятно

  • @evollt
    @evollt 3 ปีที่แล้ว +2

    Здравствуйте. Спасибо вам за курс! Все очень понятно и доступно. Вы объясняете чуть ли ни каждую мелочь и это очень хорошо.

  • @mobilelegends8845
    @mobilelegends8845 4 ปีที่แล้ว +4

    Братушка от души за контент, очень класно все объясняешь! Плиз побольше питона бро, а с нас царские лайки))

  • @kayuttv8231
    @kayuttv8231 3 ปีที่แล้ว

    Огромное спасибо... Уже несколько дней пытаюсь понять, а не получается. А у вас всё понятно каждую строку объяснили. Ещё раз огромный респект!

  • @Tobi17460
    @Tobi17460 2 ปีที่แล้ว

    Три дня я писал и вникал в этот код, спасибо большое за такой урок очень полезный, теперь я на шаг ближе к своей мечте!

  • @aleksgor1408
    @aleksgor1408 2 ปีที่แล้ว

    Круто. Искал нормальное поясняющее видео по парсингу. В этом максимально все понял ))) Спасибо.

  • @maxymus7884
    @maxymus7884 3 ปีที่แล้ว +1

    Большое спасибо за урок! За один вечер с поверхностными знаниями по python прошел урок и видоизменил его под свои нужды для парсинга с других сайтов(маркетплейс).

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      Рад, что был полезен

    • @mr.akulka
      @mr.akulka 3 ปีที่แล้ว

      Поделись пожалуйста кодом для маркетплейса

  • @yarikyarik8275
    @yarikyarik8275 3 ปีที่แล้ว +3

    Все очень хорошо объяснил. Только, просьба, делай масштаб побольше, а то на телефоне плохо видно)

  • @simple1kazakh
    @simple1kazakh 3 ปีที่แล้ว +1

    очень полезный урок, написал свой первый парсер, благодарю Андрей!

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      Не останавливайся)

  • @shadows2138
    @shadows2138 3 ปีที่แล้ว +1

    Урок был очень полезен. я только начал изучать. Вы сказали, что у Вас есть курс. Я его посмотрю. Курсы не бывают лишними). Вы говорите, что урок длинный и Вы много останавливаетесь на мелочах, но как новичок скажу, что проще перемотать вперёд, если ты что-то знаешь, чем упустить важную мелочь, когда ты ничего не знаешь)

  • @po100lit7
    @po100lit7 2 ปีที่แล้ว +1

    здОрово! Браво! ещё бы добавить автоматическое определение количества страниц для парсинга)))

  • @Alex_MacDenis
    @Alex_MacDenis 3 ปีที่แล้ว +4

    Огромное спасибо автору! Всё максимально понятно и подробно, большое спасибо!❤️

  • @skuse01
    @skuse01 7 หลายเดือนก่อน +1

    Ты просто лучший, огромное спасибо

    • @andrievskii
      @andrievskii  7 หลายเดือนก่อน

      Спасибо

  • @belford_acj2302
    @belford_acj2302 2 ปีที่แล้ว

    Андрей Андриевский, спасибо Вам большое за решение с Плагинацией. Круто! Все сделал и все получилось! Желаю Вам успехов в 2022-году! :)

  • @userikzhan6683
    @userikzhan6683 3 ปีที่แล้ว +3

    Спасибо за очень полезный и компактный разбор! Лайк и подписка!

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      Спасибо за подписку

  • @Вячеслав-х4и1ю
    @Вячеслав-х4и1ю ปีที่แล้ว

    Спасибо добрый человек! Отличная подача материала. Респект!

  • @alexalexov7164
    @alexalexov7164 2 ปีที่แล้ว

    спасибо вам большое! наконецто научился парсить сайты! и это все благодаря вам! смотрел много видео но самое лутшее обяснение иммено у вас! спасибо еще раз! вы мне ооочень помогли! вы лутший!!!

  • @d0r1s3t6
    @d0r1s3t6 3 ปีที่แล้ว

    Спасибо большое вам! Пытался писать парсера, никак не получалось, зашел к вам на видео - все с первого раза написал

  • @Mr717273747
    @Mr717273747 3 ปีที่แล้ว +1

    Андрюха, спасибо за доскональный урок.
    Ты - лучший.
    Don't get lost !

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      спасибо за комментарий

  • @Nikbleat
    @Nikbleat 4 ปีที่แล้ว +1

    Мучался с парсером 3 дня. Однако с твоим видео всё таки смог его довести до результата.

  • @Metalfrezer
    @Metalfrezer 3 ปีที่แล้ว

    Вот такие и должны быть уроки! Респектище и спасибо колоссальное!

  • @Kaiserdom
    @Kaiserdom 4 ปีที่แล้ว

    Единственный толковый урок. Спасибо, все понятно и ясно объяснил!!!

  • @Reshila-us6uc
    @Reshila-us6uc 3 ปีที่แล้ว +1

    *Ты лучший спасибо по больше таких уроков*

  • @MultiTuzik
    @MultiTuzik ปีที่แล้ว

    Супер видео , спасибо вам , очень круто объясняете , пересмотрю ваши плейлисты на досуге )

  • @FriskesTV
    @FriskesTV 2 ปีที่แล้ว

    Спасибо за видео, хорошо объясняешь!
    Помощь тем у кого траблы с кодировкой, это происходит изза символа 'é' в одном из тайтлов карт 'Chaméléon', есть 2 решения, либо подменить эти символы с помощью метода replace(), и тогда эта карта сохранится в наш список, либо просто отбросить данную карту вместе с ошибкой с помощью try except пример:
    try:
    writer.writerow([item['title'], item['link_product'], item['brand'], item['card_img']])
    except UnicodeEncodeError:
    print('Получена ошибка: UnicodeEncodeError')

  • @cassidy7172
    @cassidy7172 3 ปีที่แล้ว +1

    Спасибо, дружище, всё подробно и по делу. Очень полезное видео.

  • @artemselivanov6892
    @artemselivanov6892 3 ปีที่แล้ว +1

    Дякую за урок. Це було дуже корисно!

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      Гарного навчання

  • @РусланИващенко-у6я
    @РусланИващенко-у6я 4 ปีที่แล้ว +2

    Круто!
    Получилось! Правда только одну страницу и без сохранения в файл почему-то.. Буду пересматривать еще, видимо что-то упустил.
    Ждем продолжения!

  • @ИльяЗанин-и5м
    @ИльяЗанин-и5м ปีที่แล้ว

    Бро, спасибо тебе большое, ты реально мне помог! Здоровье тебе и твоим близким

  • @kakTyzZz69
    @kakTyzZz69 2 ปีที่แล้ว

    Отличное видео, самое годное по парсингу! Автору респект

  • @swipes1
    @swipes1 3 ปีที่แล้ว +4

    Спасибо супер, сделайте парсер с сайтами куда надо заходить с логином, хотя бы легенкий парсер чтобы понять как работать

  • @michaelpodroykin7722
    @michaelpodroykin7722 4 ปีที่แล้ว

    Андрей!!
    Круто, молодец
    Просмотрел весь видос, все ясно и понятно рассказываешь)
    Спасибо

  • @stradys
    @stradys ปีที่แล้ว +1

    спасибо, хороший урок! сделайте пжл аналогичное видео с использованием Selenium для динамических сайтов, думаю многим будет интересно

  • @Bah1918
    @Bah1918 3 ปีที่แล้ว

    Классное объяснение .Хоть один человек детально всё показал. СПАСИБО. А видео с применением ООП будет.?

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว +1

      Будет в плейлисте о Джанго

  • @SmorodinkaMarina
    @SmorodinkaMarina ปีที่แล้ว

    Круто, огромное спаибо.

  • @Bah1918
    @Bah1918 3 ปีที่แล้ว +2

    Очень полезный урок. СПАСИБО

  • @Kosmoswa
    @Kosmoswa 3 ปีที่แล้ว +1

    отличный урок. большое спасибо!

    • @andrievskii
      @andrievskii  3 ปีที่แล้ว

      Пожалуйста

  • @MrTimmirs
    @MrTimmirs 3 ปีที่แล้ว

    Отличный урок, думаю будет всем полезно рассмотреть создание парсера через ООП.
    Спасибо за труд!

  • @arktikmoon
    @arktikmoon 3 ปีที่แล้ว +2

    Ну блин всё огонь. Кстати там сразу заметил пропущенные двоеточия в словаре на паре ключ значение. Смотрю и думаю сказал словарь, записывает данные как множество. Только множество пустое не так создаётся, и после последнего элемента насколько помню нужно запятую. Что то здесь не то))). И на константе csv pycharm заругался))). Там же как метод воспринимается. Когда без кавычек.

    • @arktikmoon
      @arktikmoon 3 ปีที่แล้ว

      Огромнейшее спасибо от всей души за урок. Шикарная подача.

  • @vvsyakiy
    @vvsyakiy 3 ปีที่แล้ว +7

    Для всех у кого парсятся непонятные символы вместо русских букв:
    в функции get_html добавьте строчку " r.encoding = 'utf8' " и всё будет норм

    • @nigma933
      @nigma933 3 ปีที่แล้ว

      спасибо от души

    • @grigoriimikhailov703
      @grigoriimikhailov703 3 ปีที่แล้ว

      а куда её вставить - можно чуть подробнее плиз? не понимаю :(

    • @vvsyakiy
      @vvsyakiy 3 ปีที่แล้ว +1

      @@grigoriimikhailov703 между r = requests.get(url, headers=HEADERS, params=params) и return r

  • @ИльяИлья-ю2ы
    @ИльяИлья-ю2ы 3 ปีที่แล้ว +1

    Отличный урок! Подписался

  • @ghostfromsky
    @ghostfromsky 2 ปีที่แล้ว

    Спасибо большое вам, объяснили все очень понятно. Мне этот ролик очень сильно помог, здоровья вам!

  • @GohaBed
    @GohaBed 4 ปีที่แล้ว +2

    жму руку! все ясно и понятно!

  • @ГульшатА-ц2с
    @ГульшатА-ц2с 3 ปีที่แล้ว

    Мега-полезный урок! спасибо!

  • @romanmyhailyshyn
    @romanmyhailyshyn 2 ปีที่แล้ว

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

  • @bers991
    @bers991 3 ปีที่แล้ว +2

    Спасибо за видео, отлично объясняете, помогло в освоении python !

  • @ayakovtsev
    @ayakovtsev 4 ปีที่แล้ว +1

    Красава! Видос отличный! Спасибо, что заморочился!

  • @quickliker
    @quickliker 4 ปีที่แล้ว +1

    Не ну это лайк однозначно👍🏻

  • @NavAlextv
    @NavAlextv 4 ปีที่แล้ว

    Просто отличная подача материала, супер!!!

  • @ХеллБой-я1щ
    @ХеллБой-я1щ 3 ปีที่แล้ว

    Информативное видео, спасибо огромное!

  • @ВиталийПотылицын-ж3з
    @ВиталийПотылицын-ж3з 2 ปีที่แล้ว

    Спасибо за ваш труд,позновательно!

  • @irinaste91
    @irinaste91 2 ปีที่แล้ว

    Круто.Спасибо.👍👍👍👍👍👍👍👍👍👍

  • @denysmilka6762
    @denysmilka6762 4 ปีที่แล้ว

    Видос годный)
    Лайк подписка.
    Пойду писать код.

  • @tmercurial
    @tmercurial 3 ปีที่แล้ว

    Спасибо за урок, смог написать парсер под мои цели

  • @orkenrakhmatulla2127
    @orkenrakhmatulla2127 2 ปีที่แล้ว

    Классно , спасибо большое !👍🏻

  • @ВладимирЧехун-ц8д
    @ВладимирЧехун-ц8д 3 ปีที่แล้ว +1

    Понятно и доходчиво

  • @pchuprinina
    @pchuprinina 3 ปีที่แล้ว +1

    Чтобы захватывал последнюю страницу необходимо писать range не захватывает последнее значение

  • @АлексейИванов-ц5л3ы
    @АлексейИванов-ц5л3ы 3 ปีที่แล้ว

    Спасибо за людское объяснение ))))

  • @liubovkernichnaya9610
    @liubovkernichnaya9610 4 ปีที่แล้ว

    Ставлю тебе душевный лайк, видео очень помогло, отличный урок, спасибо тебе за твой труд!

  • @djonikbb5572
    @djonikbb5572 3 ปีที่แล้ว +1

    Однозначно подписка ,жду видео по питону

  • @emilseyfullayev1638
    @emilseyfullayev1638 3 ปีที่แล้ว +2

    slov net, prosto bolshoy like

  • @0palev
    @0palev 3 ปีที่แล้ว

    отличный урок получился, и у меня почти всё вышло, пока не начал сохранять в csv файл адреса картинок и ссылку на банк, что то с кодировкой.
    Если написать так
    with open(path, 'w', newline='', encoding='utf8') as file
    тогда все гуд, но в екселе абра кадабра, которую уже потом можно декодировать.

  • @ДенисДемиденко-щ5м
    @ДенисДемиденко-щ5м 4 ปีที่แล้ว

    Урок понравился, спасибо. Всё понятно) Даже подписался

  • @vasyltopalo8962
    @vasyltopalo8962 3 ปีที่แล้ว

    Гарно дякую👍

  • @VladislavN-v2y
    @VladislavN-v2y 3 ปีที่แล้ว

    Хорошее видео. Всё понятно.

  • @КороткевичМихаил
    @КороткевичМихаил 3 ปีที่แล้ว

    Всё очень понятно. Спасибо большое! =)

  • @ДарийМар
    @ДарийМар 2 ปีที่แล้ว

    очень круто, спасибо

  • @andriyrudenko9314
    @andriyrudenko9314 2 ปีที่แล้ว

    ЛУЧШИЙ!!

  • @roman445
    @roman445 3 ปีที่แล้ว +6

    Спасибо за урок, сделал парсер по нему для тех же карточек. Теперь там все поменялось, я переделал. Если кому нужен код, что бы не набивать, пишите. Только у меня названия банков парсятся в неправильной кодировке, не знаю что с этим делать пока.

    • @vladmvv4849
      @vladmvv4849 3 ปีที่แล้ว

      Пропиши utf-8 забей как это сделать

    • @vincemanlie4435
      @vincemanlie4435 2 ปีที่แล้ว

      Вышлите мне код пожалуйста

  • @niva622
    @niva622 2 ปีที่แล้ว

    Отличное видео спасибо

  • @ЮлияПавленко-й5н
    @ЮлияПавленко-й5н 2 ปีที่แล้ว

    Определенно лайка

  • @Loveisdarknesss
    @Loveisdarknesss ปีที่แล้ว

    я думаю пора обновить данное видео, можно даже на этом же сайте, думаю всем будет интересно поменялось что то за 3 года или нет)

  • @user-urfinjuice
    @user-urfinjuice 4 ปีที่แล้ว +2

    В восторге друг

  • @ХожиакбарБаратов-ъ3ц
    @ХожиакбарБаратов-ъ3ц 4 ปีที่แล้ว +3

    Давайте сделаем шахматы в python-не
    Спасибо за уроки)

  • @nyakakun3398
    @nyakakun3398 3 ปีที่แล้ว

    Атрибут ХРЕФ :D
    ета луцк, адназначно

  • @denisgoldman3255
    @denisgoldman3255 2 ปีที่แล้ว +2

    Спасибо за видео! Один вопрос, как парсить по списку ссылок? Есть определённые ссылки на страницы, с которых нужно спарсить title и h1. Как это сделать?

  • @gaben_aTan
    @gaben_aTan 2 ปีที่แล้ว

    Все доступно, но ещё бы структура кода была бы в рамках ООП :))))

  • @СоглаевПавел
    @СоглаевПавел 4 ปีที่แล้ว +3

    Всё полезно, просто и для тупых. Уважуха и респект!!!

  • @road2zion2
    @road2zion2 3 ปีที่แล้ว

    Спасибо! Очень помог!

  • @OurFront1
    @OurFront1 4 ปีที่แล้ว +1

    Спасибо Андрей. Видео супер! Хотелось бы еще понять можно ли в .csv екселя подгружать + (отображение фото). Также по парсингу было (очень)*5 отлично = если бы сделал урок где данные которые спарсились, отображались в графиках пайтона matplotlib.

  • @dmitrys5289
    @dmitrys5289 2 ปีที่แล้ว

    Сайт переделали, но главное что все принципы разжеваны и можно без проблем повторить. Так даже интереснее))

  • @arturogatti4462
    @arturogatti4462 4 ปีที่แล้ว

    Здравствуйте Андрей! Вы знаете фреймворк Flask? Если да то планируете сделать уроки по Фласку?

  • @ПИОНЕР-МузыкальнаястудиявБрянс

    url в get_html записан маленькими буквами. В то время как константа URL записана большими. Как это работает? Питон ведь чувствителен к регистру. Не понимаю.

  • @caiman101
    @caiman101 4 ปีที่แล้ว

    Спасибо, друже!

  • @ФаррухбекУлугбеков
    @ФаррухбекУлугбеков 4 ปีที่แล้ว

    спасибо очень интересно и познавательно было

  • @openuser
    @openuser 2 ปีที่แล้ว

    Те кто благодарят, вы повторяли за автором? Интересно и полезно, сомнения нет, но нет уже одинаковых классов, все разные, и обучение на этом прерывается. Надо искать другой путь! ))

  • @kachala
    @kachala ปีที่แล้ว

    20:50 вместо 200 выдаёт response 403
    почитал и пишет что это защита от парсинга стоит

  • @ЕвгенСахаров
    @ЕвгенСахаров 2 ปีที่แล้ว

    Недоумение и страх были пол года назад. Тогда я первый раз увидел это видео и ушел с него. Ну а теперь буду смотреть до конца,ну и конечно пробовать что то делать. Да, я еще fake_useragent прикручу.