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

Поделиться
HTML-код
  • Опубликовано: 18 дек 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 Я понимаю, что автор легко нашел бы эти неточности в реальном проекте, но написал для тех, кто будет смотреть данное видео для обучения.

  • @baluan_sholak
    @baluan_sholak 2 года назад +1

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

    • @МаркМалина
      @МаркМалина 2 года назад

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

    • @baluan_sholak
      @baluan_sholak 2 года назад +1

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

  • @mma_fighter
    @mma_fighter 3 года назад +4

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

    • @andrievskii
      @andrievskii  3 года назад

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

    • @Veber-we4it
      @Veber-we4it 3 года назад

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

  • @animegogogo5124
    @animegogogo5124 8 месяцев назад +1

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

    • @andrievskii
      @andrievskii  8 месяцев назад

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

  • @erickwhite1195
    @erickwhite1195 4 года назад +11

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

    • @dryuni
      @dryuni 8 месяцев назад

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

  • @АртурТестов-л6д
    @АртурТестов-л6д 4 года назад +20

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

  • @Владимир-щ8н3ь
    @Владимир-щ8н3ь 4 года назад +3

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

  • @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')

  • @cyber_ukraine
    @cyber_ukraine 3 года назад +6

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

    • @andrievskii
      @andrievskii  3 года назад

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

    • @TXADodje
      @TXADodje 3 года назад +7

      Соболезную

  • @Bondik202
    @Bondik202 4 года назад +8

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

  • @Evis9110
    @Evis9110 4 года назад +9

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

  • @Tobi17460
    @Tobi17460 2 года назад

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

  • @alexalexov7164
    @alexalexov7164 2 года назад

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

  • @maxymus7884
    @maxymus7884 3 года назад +1

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

    • @andrievskii
      @andrievskii  3 года назад

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

    • @mr.akulka
      @mr.akulka 3 года назад

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

  • @goodtrydemongg2033
    @goodtrydemongg2033 4 года назад +2

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

    • @andrievskii
      @andrievskii  4 года назад

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

  • @belford_acj2302
    @belford_acj2302 2 года назад

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

  • @evollt
    @evollt 4 года назад +2

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

  • @kayuttv8231
    @kayuttv8231 3 года назад

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

  • @shadows2138
    @shadows2138 3 года назад +1

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

  • @mobilelegends8845
    @mobilelegends8845 4 года назад +4

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

  • @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

  • @aleksgor1408
    @aleksgor1408 2 года назад

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

  • @d0r1s3t6
    @d0r1s3t6 3 года назад

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

  • @Nikbleat
    @Nikbleat 4 года назад +1

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

  • @simple1kazakh
    @simple1kazakh 3 года назад +1

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

    • @andrievskii
      @andrievskii  3 года назад

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

  • @po100lit7
    @po100lit7 2 года назад +1

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

  • @MultiTuzik
    @MultiTuzik Год назад

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

  • @swipes1
    @swipes1 3 года назад +4

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

  • @yarikyarik8275
    @yarikyarik8275 3 года назад +3

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

  • @0palev
    @0palev 3 года назад

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

  • @ИльяЗанин-и5м
    @ИльяЗанин-и5м 2 года назад

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

  • @Alex_MacDenis
    @Alex_MacDenis 3 года назад +4

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

  • @arktikmoon
    @arktikmoon 3 года назад +2

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

    • @arktikmoon
      @arktikmoon 3 года назад

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

  • @MrTimmirs
    @MrTimmirs 3 года назад

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

  • @Mr717273747
    @Mr717273747 3 года назад +1

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

    • @andrievskii
      @andrievskii  3 года назад

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

  • @Kaiserdom
    @Kaiserdom 4 года назад

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

  • @userikzhan6683
    @userikzhan6683 3 года назад +3

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

    • @andrievskii
      @andrievskii  3 года назад

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

  • @РусланИващенко-у6я
    @РусланИващенко-у6я 4 года назад +2

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

  • @michaelpodroykin7722
    @michaelpodroykin7722 4 года назад

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

  • @romanmyhailyshyn
    @romanmyhailyshyn 2 года назад

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

  • @Tommy7417
    @Tommy7417 Год назад +1

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

  • @stradys
    @stradys Год назад +1

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

  • @ghostfromsky
    @ghostfromsky 2 года назад

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

  • @Вячеслав-х4и1ю
    @Вячеслав-х4и1ю Год назад

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

  • @bers991
    @bers991 3 года назад +2

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

  • @Metalfrezer
    @Metalfrezer 3 года назад

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

  • @roman445
    @roman445 3 года назад +6

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

    • @vladmvv4849
      @vladmvv4849 3 года назад

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

    • @vincemanlie4435
      @vincemanlie4435 2 года назад

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

  • @liubovkernichnaya9610
    @liubovkernichnaya9610 4 года назад

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

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

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

  • @pchuprinina
    @pchuprinina 3 года назад +1

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

  • @denisgoldman3255
    @denisgoldman3255 2 года назад +2

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

  • @djonikbb5572
    @djonikbb5572 3 года назад +1

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

  • @Loveisdarknesss
    @Loveisdarknesss Год назад

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

  • @cassidy7172
    @cassidy7172 3 года назад +1

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

  • @Reshila-us6uc
    @Reshila-us6uc 4 года назад +1

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

  • @tmercurial
    @tmercurial 3 года назад

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

  • @kakTyzZz69
    @kakTyzZz69 2 года назад

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

  • @artemselivanov6892
    @artemselivanov6892 3 года назад +1

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

    • @andrievskii
      @andrievskii  3 года назад

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

  • @Bah1918
    @Bah1918 3 года назад +2

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

  • @kachala
    @kachala Год назад

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

  • @Kosmoswa
    @Kosmoswa 3 года назад +1

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

  • @Bah1918
    @Bah1918 3 года назад

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

    • @andrievskii
      @andrievskii  3 года назад +1

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

  • @ДенисДемиденко-щ5м
    @ДенисДемиденко-щ5м 4 года назад

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

  • @skuse01
    @skuse01 9 месяцев назад +1

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

  • @othelnik6659
    @othelnik6659 4 года назад +4

    А почему у меня парсится не страничка объектов а только один объект на страничке??

  • @Дудха
    @Дудха 3 года назад +1

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

  • @viktornet-k6x
    @viktornet-k6x 3 года назад +2

    Подскажите, пожалуйста, получаю ошибку:
    'title': item.find('div', class_='img-crop').get_text()
    AttributeError: 'NoneType' object has no attribute 'get_text'
    В чём может быть проблема? Весь код чётко по видеоуроку, ошибку выдаёт после добавления .get_text(), .find(). Если не добавлять .get_text(), .find() выдаёт словарь [{'title': None}].

    • @TheRindzinnew
      @TheRindzinnew 3 года назад

      Здравствуйте я тоже досмотрел все видео и вбил до конца. По всему нету пару советов есть на английских сайтах пока думаю. вот один советует.coderoad.ru/51687872/BeautifulSoup-get_text-возвращает-объект-NoneType

    • @Eirstream
      @Eirstream 2 года назад

      Во-первых в уроке не так написано, там .get_text(strip=True), во-вторых у Вас ошибка в выборе div, где находится класс img-crop, нужно указать правильно вышестоящий div, в котором вы ищите и указать его в строке, которая выше items = soup.find_all('div', class_='ВОТ ТУТ')

  • @АнастасіяПономарьова-ш1е

    Добрый день, сделала парсер все по уроку, парсит только первую страницу, если написать парсить 2 и более, просто дублирует данные с первой страницы. Прошу помощи

    • @НиколайСахаров-к9ь
      @НиколайСахаров-к9ь 3 года назад

      ЖИЗА! Решили проблему?

    • @АнастасіяПономарьова-ш1е
      @АнастасіяПономарьова-ш1е 3 года назад

      @@НиколайСахаров-к9ь да, пагинацию сделала по-другому, привязка к номерам страниц снизу или сверху первой, пример
      def get_pages_count(url, url_headers):
      html=requests.get(url, headers=url_headers)
      # print(html.text)
      tree = BeautifulSoup(html.text, 'lxml')
      links=tree.find_all("a", class_='page-link')
      # print(links[-2])
      page_count = int(links[-2].get_text(strip=True))
      print("Всего страниц: %d" % page_count)
      return page_count
      возвращает кол-во страниц, далее включаю цикл for от 1 до page_count

  • @ayakovtsev
    @ayakovtsev 4 года назад +1

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

  • @denysmilka6762
    @denysmilka6762 4 года назад

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

  • @ban2479
    @ban2479 4 года назад +1

    я астановился на 20:56 время мне написало что делать?
    C:\Users\Ban\AppData\Local\Programs\Python\Python39\python.exe C:/Users/Ban/PycharmProjects/pythonProject2/parser.py
    File "C:\Users\Ban\PycharmProjects\pythonProject2\parser.py", line 13
    r = requests.get(url, headers=,params=params)
    ^
    SyntaxError: expression cannot contain assignment, perhaps you meant "=="?
    Process finished with exit code 1

  • @NavAlextv
    @NavAlextv 4 года назад

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

  • @BaukaPlay
    @BaukaPlay 4 года назад +1

    У меня вопрос, for item in items- зачеп писать и что значит, у меня ошибка выходит и я туплю

    • @ФаррухбекУлугбеков
      @ФаррухбекУлугбеков 4 года назад +1

      чтобы по циклу пробегаться

    • @andrewpro5756
      @andrewpro5756 4 года назад +1

      @@ФаррухбекУлугбеков А почему ошибка?У мене просто тоже помилка виходить:
      IndentationError: unindent does not match any outer indentation level

    • @asd-sl1kv
      @asd-sl1kv 4 года назад

      у тебя есть вот такая строка: items = soup.find_all("тег", class_ = "класс"), в переменной items содержится список и ты запускаешь цикл for в котором пробегаешься по этому списку добавляя все элементы которые имеют нужный тебе тег и класс: "title" : item.find("тег", class_ = "класс").get_text(strip = True)

    • @ivanrockby2163
      @ivanrockby2163 4 года назад

      Отступы должны быть одинаковыми, т.е. где-то вводил пробелы, а где-то символ табуляции

  • @openuser
    @openuser 2 года назад

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

  • @Татьяна-х2ш9з
    @Татьяна-х2ш9з 3 года назад +1

    По образцу этого сайта получается отлично. А, если вариант из нескольких страниц, но там не page, а каждая страница с изменением даты скидки, то не срабатывает. Образец страниц discounts/11 - 11 - 2020 и следующая discounts/01 - 01 - 2021. Если в примере есть cards, catalog, page , то на этом сайте там, где cards идёт discount, а дальше сразу даты и то в искажённом формате.
    Ожидаемый результат 'NoneType' object is not iterable
    Может, кто подскажет, что надо изменить в коде. Спасибо

    • @ФанзильГаллямов-ы9ч
      @ФанзильГаллямов-ы9ч 3 года назад

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

  • @ВиталийПотылицын-ж3з

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

  • @ЕвгенСахаров
    @ЕвгенСахаров 2 года назад

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

  • @dmitrys5289
    @dmitrys5289 2 года назад

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

  • @ГульшатА-ц2с
    @ГульшатА-ц2с 3 года назад

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

  • @gaben_aTan
    @gaben_aTan 2 года назад

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

  • @АртёмАсылгужин-о6с
    @АртёмАсылгужин-о6с 4 года назад +2

    при проверке выводятся пустые списки [] в чём может быть проблема?

    • @ТатьянаПопова-в8щ
      @ТатьянаПопова-в8щ 4 года назад

      такая же проблема

    • @asd-sl1kv
      @asd-sl1kv 4 года назад +1

      Артём, ты просто неправильные классы указал и вероятно блоки, тебе надо разобраться куда что сувать и научиться это делать на разных сайтах ведь везде структура разная items = soup.find_all("div", class_ = "snippet-horizontal") сюда ты должен воткнуть класс всех блоков, которые ты хочешь спарсить, они под одним классом, тебе надо определить под каким,"title" : item.find("a", class_ = "snippet-link"), сюда ты должен уже ввести класс и тег, где находится то что тебе нужно, если то что тебе нужно находится в блоке "a", под атрибутом, href, к примеру, то тебе нужно указать это вот так: "title" : item.find("a", class_ = "snippet-link").get("href")

    • @chasesilvers1582
      @chasesilvers1582 4 года назад

      Если вдруг еще актуально или кому поможет:
      Средой должен подсвечиваться метод append, т.е. круглая скобка должна быть рядом с ним, без переноса.
      Не cards.append
      (
      А cards.append(
      {}

  • @winssd9496
    @winssd9496 3 года назад +1

    На первом этапе вместо Response 200
    Response 403. Что делать

  • @КороткевичМихаил
    @КороткевичМихаил 3 года назад

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

  • @ХеллБой-я1щ
    @ХеллБой-я1щ 3 года назад

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

  • @GohaBed
    @GohaBed 4 года назад +2

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

  • @anns7309
    @anns7309 3 года назад +1

    Спасибо за видео! А как правильно пройтись циклом, если нужно пройти по ссылке заголовка банковской карты и оттуда уже брать доп инфо?

  • @СоглаевПавел
    @СоглаевПавел 4 года назад +3

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

  • @quickliker
    @quickliker 4 года назад +1

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

  • @АлександрК-ш
    @АлександрК-ш Год назад

    А если, когда мы на вкладке Network, у меня нет вверху пункта cards, то куда кликать?

    • @andrievskii
      @andrievskii  Год назад

      Искать другой пункт, это же всего название тега

    • @АлександрК-ш
      @АлександрК-ш Год назад

      @@andrievskii А на данный момент какой другой пункт искать?

  • @Andrey-ee8fk
    @Andrey-ee8fk 2 года назад

    Добрый день С вами вместе пишу код Скажите почему на первом этапе ошибка import requests
    ModuleNotFoundError: No module named 'requests'

    • @darkcorn6059
      @darkcorn6059 2 года назад +1

      Эти 2 библиотеки устанавливаются отдельно командой через cmd

  • @crampot5271
    @crampot5271 4 года назад +1

    Привет, а почему идет дублирование каждой карты в начале каждой страницы???

    • @rqwear
      @rqwear 4 года назад

      Из-за использования неправильного div в get_content, если взять class_= 'row' ошибка пропадет

  • @Martini82w
    @Martini82w 8 месяцев назад +1

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

    • @andrievskii
      @andrievskii  8 месяцев назад

      Нужно при парсинге менять принудительно кодировку или открывать файл программой OpenOffice (там пакет с разных программ и они бесплатны)

    • @Martini82w
      @Martini82w 8 месяцев назад

      Я пока его просто открываю на гуг диске и потом скачиваю в exel

    • @Martini82w
      @Martini82w 8 месяцев назад

      Подскажите, пожалуйста, если артикул товара находится непосредственно в самом товаре, на другой странице, а к каталоге, превьюшке его нет. Можно как то это сделать в одном коде? Как вариант можно написать два парсера и потом объединить к примеру по названию, синхронизировать)

  • @Morphem85
    @Morphem85 4 года назад

    Какой шрифт используете в пайчарм? Красивый...

  • @nikodavv
    @nikodavv Год назад

    Очень здорово, спасибо за объяснение. Получилось, но единственное, у меня парит только один продукт с каждой страницы, можете подсказать почему так и как исправить?

    • @andrievskii
      @andrievskii  Год назад

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

  • @emilseyfullayev1638
    @emilseyfullayev1638 4 года назад +2

    slov net, prosto bolshoy like

  • @ИванКорсаков-ф6й
    @ИванКорсаков-ф6й 3 года назад +1

    Хотелось бы увидеть парсер страниц, где нет пагинации.
    где URL не меняется при смене пагинации.

  • @orkenrakhmatulla2127
    @orkenrakhmatulla2127 2 года назад

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

  • @ЛарисаПантелеева-ь8ь
    @ЛарисаПантелеева-ь8ь 8 месяцев назад +1

    Выводит вместо страниц только карты, 2 страницы выбираю парсить, выводит 1 карту, что делать?

    • @andrievskii
      @andrievskii  8 месяцев назад

      Ну значит сменилось что-то в сайте который парсится или парсер не верно написан. могла быть маленькая ошибка. Что же делать!?!?!?
      1. Пошагово провести дебагинг приложения, везде где есть какие-то переменные выводить в консоль и смотреть то там что нужно или нет
      2. Присмотреться к коду и увидеть визуально. что не так (только если вы понимаете ЯП а не просто списали по видео код)

  • @РоманСуворов-й2т
    @РоманСуворов-й2т 3 года назад +2

    Мысль правильная, но не работает, ваш код. Нужно править логику перехода по страницам.