Отличная подача материал, но есть ряд замечаний: 1. range(1, n) возвращает список начинающийся с 1 и заканчивающийся n-1, соответственно в Вашем случае нужно написать range(1, PAGINATION+1); 2. функцию save_doc(cards, CSV) необходимо сдвинуть влево на уровень вышестоящего for. В текущем варианте записываемые в файл данные будут повторяться с нарастанием последующего прохода цикла парсера. PS Я понимаю, что автор легко нашел бы эти неточности в реальном проекте, но написал для тех, кто будет смотреть данное видео для обучения.
Спасибо за видео. Кстати у кого выдает ошибку UnicodeEncodeError, в with open добавьте encoding="utf-8-sig" (если вы работаете в виндовс). Будет выглядеть так: with open(path, 'w', newline='', encoding="utf-8-sig") as file: Отличное обучение для новичков, еще раз спасибо!
За 1 час я понял как парсить, я думал это сложно, но оказываеться это не так сложно, понятно и дохотчиво объясняешь даже каджую мелочь, мало таких кто объясняют, Спасибо за курс! вы лучший!❤ Спасибо что есть такие люди!
Спасибо за видео, хорошо объясняешь! Помощь тем у кого траблы с кодировкой, это происходит изза символа 'é' в одном из тайтлов карт 'Chaméléon', есть 2 решения, либо подменить эти символы с помощью метода replace(), и тогда эта карта сохранится в наш список, либо просто отбросить данную карту вместе с ошибкой с помощью try except пример: try: writer.writerow([item['title'], item['link_product'], item['brand'], item['card_img']]) except UnicodeEncodeError: print('Получена ошибка: UnicodeEncodeError')
Уважаемый АВТОР, вы гений! Я за все 5 лет обучения в универе получил в разы меньше знаний чем от часа просмотра этого видео! Ставлю колокольчик на будущие уроки!
спасибо вам большое! наконецто научился парсить сайты! и это все благодаря вам! смотрел много видео но самое лутшее обяснение иммено у вас! спасибо еще раз! вы мне ооочень помогли! вы лутший!!!
Большое спасибо за урок! За один вечер с поверхностными знаниями по python прошел урок и видоизменил его под свои нужды для парсинга с других сайтов(маркетплейс).
Урок был очень полезен. я только начал изучать. Вы сказали, что у Вас есть курс. Я его посмотрю. Курсы не бывают лишними). Вы говорите, что урок длинный и Вы много останавливаетесь на мелочах, но как новичок скажу, что проще перемотать вперёд, если ты что-то знаешь, чем упустить важную мелочь, когда ты ничего не знаешь)
отличный урок получился, и у меня почти всё вышло, пока не начал сохранять в csv файл адреса картинок и ссылку на банк, что то с кодировкой. Если написать так with open(path, 'w', newline='', encoding='utf8') as file тогда все гуд, но в екселе абра кадабра, которую уже потом можно декодировать.
Ну блин всё огонь. Кстати там сразу заметил пропущенные двоеточия в словаре на паре ключ значение. Смотрю и думаю сказал словарь, записывает данные как множество. Только множество пустое не так создаётся, и после последнего элемента насколько помню нужно запятую. Что то здесь не то))). И на константе csv pycharm заругался))). Там же как метод воспринимается. Когда без кавычек.
Спасибо за урок, сделал парсер по нему для тех же карточек. Теперь там все поменялось, я переделал. Если кому нужен код, что бы не набивать, пишите. Только у меня названия банков парсятся в неправильной кодировке, не знаю что с этим делать пока.
url в get_html записан маленькими буквами. В то время как константа URL записана большими. Как это работает? Питон ведь чувствителен к регистру. Не понимаю.
Спасибо за видео! Один вопрос, как парсить по списку ссылок? Есть определённые ссылки на страницы, с которых нужно спарсить title и h1. Как это сделать?
Подскажите, пожалуйста, получаю ошибку: '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}].
Здравствуйте я тоже досмотрел все видео и вбил до конца. По всему нету пару советов есть на английских сайтах пока думаю. вот один советует.coderoad.ru/51687872/BeautifulSoup-get_text-возвращает-объект-NoneType
Во-первых в уроке не так написано, там .get_text(strip=True), во-вторых у Вас ошибка в выборе div, где находится класс img-crop, нужно указать правильно вышестоящий div, в котором вы ищите и указать его в строке, которая выше items = soup.find_all('div', class_='ВОТ ТУТ')
Добрый день, сделала парсер все по уроку, парсит только первую страницу, если написать парсить 2 и более, просто дублирует данные с первой страницы. Прошу помощи
@@НиколайСахаров-к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
я астановился на 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
у тебя есть вот такая строка: items = soup.find_all("тег", class_ = "класс"), в переменной items содержится список и ты запускаешь цикл for в котором пробегаешься по этому списку добавляя все элементы которые имеют нужный тебе тег и класс: "title" : item.find("тег", class_ = "класс").get_text(strip = True)
Те кто благодарят, вы повторяли за автором? Интересно и полезно, сомнения нет, но нет уже одинаковых классов, все разные, и обучение на этом прерывается. Надо искать другой путь! ))
По образцу этого сайта получается отлично. А, если вариант из нескольких страниц, но там не page, а каждая страница с изменением даты скидки, то не срабатывает. Образец страниц discounts/11 - 11 - 2020 и следующая discounts/01 - 01 - 2021. Если в примере есть cards, catalog, page , то на этом сайте там, где cards идёт discount, а дальше сразу даты и то в искажённом формате. Ожидаемый результат 'NoneType' object is not iterable Может, кто подскажет, что надо изменить в коде. Спасибо
Недоумение и страх были пол года назад. Тогда я первый раз увидел это видео и ушел с него. Ну а теперь буду смотреть до конца,ну и конечно пробовать что то делать. Да, я еще fake_useragent прикручу.
Артём, ты просто неправильные классы указал и вероятно блоки, тебе надо разобраться куда что сувать и научиться это делать на разных сайтах ведь везде структура разная 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")
Если вдруг еще актуально или кому поможет: Средой должен подсвечиваться метод append, т.е. круглая скобка должна быть рядом с ним, без переноса. Не cards.append ( А cards.append( {}
Добрый день, отличный урок, при минимальном знании удалось написать парсер, единственные вопрос с кодировкой, при окрытии файла в экселе русский шрифт отображается вопросиками(
Подскажите, пожалуйста, если артикул товара находится непосредственно в самом товаре, на другой странице, а к каталоге, превьюшке его нет. Можно как то это сделать в одном коде? Как вариант можно написать два парсера и потом объединить к примеру по названию, синхронизировать)
Очень здорово, спасибо за объяснение. Получилось, но единственное, у меня парит только один продукт с каждой страницы, можете подсказать почему так и как исправить?
В целом могу, но нужно видеть код, я же на расстоянии не умею, зайди в наш чат в телеге и напиши там, можешь, тегнуть меня или может кто другой ответит
Ну значит сменилось что-то в сайте который парсится или парсер не верно написан. могла быть маленькая ошибка. Что же делать!?!?!? 1. Пошагово провести дебагинг приложения, везде где есть какие-то переменные выводить в консоль и смотреть то там что нужно или нет 2. Присмотреться к коду и увидеть визуально. что не так (только если вы понимаете ЯП а не просто списали по видео код)
Ахренеть , как вы просто каждое слово в коде объясняете и все нормальным языком. Здоровье вам ❤
Отличная подача материал, но есть ряд замечаний:
1. range(1, n) возвращает список начинающийся с 1 и заканчивающийся n-1, соответственно в Вашем случае нужно написать range(1, PAGINATION+1);
2. функцию save_doc(cards, CSV) необходимо сдвинуть влево на уровень вышестоящего for. В текущем варианте записываемые в файл данные будут повторяться с нарастанием последующего прохода цикла парсера.
PS Я понимаю, что автор легко нашел бы эти неточности в реальном проекте, но написал для тех, кто будет смотреть данное видео для обучения.
Спасибо за видео. Кстати у кого выдает ошибку UnicodeEncodeError, в with open добавьте encoding="utf-8-sig" (если вы работаете в виндовс). Будет выглядеть так: with open(path, 'w', newline='', encoding="utf-8-sig") as file:
Отличное обучение для новичков, еще раз спасибо!
Не мог понять что делать с ошибкой, и тут ответ, спасибо)
@@МаркМалина знал, что пригодится
Много профессионалов на ютубе, но мало кто может так подробно и понять объяснить материал. Спасибо !
Но я даже не профессионал))
@@andrievskii Так ещё и скромный
За 1 час я понял как парсить, я думал это сложно, но оказываеться это не так сложно, понятно и дохотчиво объясняешь даже каджую мелочь, мало таких кто объясняют, Спасибо за курс! вы лучший!❤ Спасибо что есть такие люди!
Удачи в обучении, пусть все получится
лучшее видео по PYTHON, что я видел. Многие вещи стали понятными. Огромное спасибо! Надеюсь будут и дальше похожие видео)
Однозначно лайк, подписка.
PythonToday посмотри, тоже чувак толковый
Спасибо, что рассказал абсолютно все, даже для диких чайников. Респект 👍
Изумительное объяснение. Там где надо расставлены акценты. Спасибо!
Спасибо за видео, хорошо объясняешь!
Помощь тем у кого траблы с кодировкой, это происходит изза символа 'é' в одном из тайтлов карт 'Chaméléon', есть 2 решения, либо подменить эти символы с помощью метода replace(), и тогда эта карта сохранится в наш список, либо просто отбросить данную карту вместе с ошибкой с помощью try except пример:
try:
writer.writerow([item['title'], item['link_product'], item['brand'], item['card_img']])
except UnicodeEncodeError:
print('Получена ошибка: UnicodeEncodeError')
Уважаемый АВТОР, вы гений!
Я за все 5 лет обучения в универе получил в разы меньше знаний чем от часа просмотра этого видео!
Ставлю колокольчик на будущие уроки!
Рад был помочь))
Соболезную
отличный урок ! мне нравиться что вы рассказываете о методах подробно .
Мой первый парсер готов благодаря Вам, спасибо огромное)
Три дня я писал и вникал в этот код, спасибо большое за такой урок очень полезный, теперь я на шаг ближе к своей мечте!
спасибо вам большое! наконецто научился парсить сайты! и это все благодаря вам! смотрел много видео но самое лутшее обяснение иммено у вас! спасибо еще раз! вы мне ооочень помогли! вы лутший!!!
Большое спасибо за урок! За один вечер с поверхностными знаниями по python прошел урок и видоизменил его под свои нужды для парсинга с других сайтов(маркетплейс).
Рад, что был полезен
Поделись пожалуйста кодом для маркетплейса
Самый лучший и понятный курс по парсингу который я встречал, красавчик!
Спасибо, очень приятно
Андрей Андриевский, спасибо Вам большое за решение с Плагинацией. Круто! Все сделал и все получилось! Желаю Вам успехов в 2022-году! :)
Здравствуйте. Спасибо вам за курс! Все очень понятно и доступно. Вы объясняете чуть ли ни каждую мелочь и это очень хорошо.
Огромное спасибо... Уже несколько дней пытаюсь понять, а не получается. А у вас всё понятно каждую строку объяснили. Ещё раз огромный респект!
Урок был очень полезен. я только начал изучать. Вы сказали, что у Вас есть курс. Я его посмотрю. Курсы не бывают лишними). Вы говорите, что урок длинный и Вы много останавливаетесь на мелочах, но как новичок скажу, что проще перемотать вперёд, если ты что-то знаешь, чем упустить важную мелочь, когда ты ничего не знаешь)
Братушка от души за контент, очень класно все объясняешь! Плиз побольше питона бро, а с нас царские лайки))
Для всех у кого парсятся непонятные символы вместо русских букв:
в функции get_html добавьте строчку " r.encoding = 'utf8' " и всё будет норм
спасибо от души
а куда её вставить - можно чуть подробнее плиз? не понимаю :(
@@grigoriimikhailov703 между r = requests.get(url, headers=HEADERS, params=params) и return r
Круто. Искал нормальное поясняющее видео по парсингу. В этом максимально все понял ))) Спасибо.
Спасибо большое вам! Пытался писать парсера, никак не получалось, зашел к вам на видео - все с первого раза написал
Мучался с парсером 3 дня. Однако с твоим видео всё таки смог его довести до результата.
очень полезный урок, написал свой первый парсер, благодарю Андрей!
Не останавливайся)
здОрово! Браво! ещё бы добавить автоматическое определение количества страниц для парсинга)))
Супер видео , спасибо вам , очень круто объясняете , пересмотрю ваши плейлисты на досуге )
Спасибо супер, сделайте парсер с сайтами куда надо заходить с логином, хотя бы легенкий парсер чтобы понять как работать
Все очень хорошо объяснил. Только, просьба, делай масштаб побольше, а то на телефоне плохо видно)
отличный урок получился, и у меня почти всё вышло, пока не начал сохранять в csv файл адреса картинок и ссылку на банк, что то с кодировкой.
Если написать так
with open(path, 'w', newline='', encoding='utf8') as file
тогда все гуд, но в екселе абра кадабра, которую уже потом можно декодировать.
Бро, спасибо тебе большое, ты реально мне помог! Здоровье тебе и твоим близким
Огромное спасибо автору! Всё максимально понятно и подробно, большое спасибо!❤️
Ну блин всё огонь. Кстати там сразу заметил пропущенные двоеточия в словаре на паре ключ значение. Смотрю и думаю сказал словарь, записывает данные как множество. Только множество пустое не так создаётся, и после последнего элемента насколько помню нужно запятую. Что то здесь не то))). И на константе csv pycharm заругался))). Там же как метод воспринимается. Когда без кавычек.
Огромнейшее спасибо от всей души за урок. Шикарная подача.
Отличный урок, думаю будет всем полезно рассмотреть создание парсера через ООП.
Спасибо за труд!
Андрюха, спасибо за доскональный урок.
Ты - лучший.
Don't get lost !
спасибо за комментарий
Единственный толковый урок. Спасибо, все понятно и ясно объяснил!!!
Спасибо за очень полезный и компактный разбор! Лайк и подписка!
Спасибо за подписку
Круто!
Получилось! Правда только одну страницу и без сохранения в файл почему-то.. Буду пересматривать еще, видимо что-то упустил.
Ждем продолжения!
Андрей!!
Круто, молодец
Просмотрел весь видос, все ясно и понятно рассказываешь)
Спасибо
Спасибо, очень хорошо объясняете, час - это совсем не долго, зато подробно и понятно.
Супер, дякую за відео, та детальне пояснення.
Будь ласка
спасибо, хороший урок! сделайте пжл аналогичное видео с использованием Selenium для динамических сайтов, думаю многим будет интересно
Спасибо большое вам, объяснили все очень понятно. Мне этот ролик очень сильно помог, здоровья вам!
Спасибо добрый человек! Отличная подача материала. Респект!
Спасибо за видео, отлично объясняете, помогло в освоении python !
Вот такие и должны быть уроки! Респектище и спасибо колоссальное!
Спасибо за урок, сделал парсер по нему для тех же карточек. Теперь там все поменялось, я переделал. Если кому нужен код, что бы не набивать, пишите. Только у меня названия банков парсятся в неправильной кодировке, не знаю что с этим делать пока.
Пропиши utf-8 забей как это сделать
Вышлите мне код пожалуйста
Ставлю тебе душевный лайк, видео очень помогло, отличный урок, спасибо тебе за твой труд!
url в get_html записан маленькими буквами. В то время как константа URL записана большими. Как это работает? Питон ведь чувствителен к регистру. Не понимаю.
Чтобы захватывал последнюю страницу необходимо писать range не захватывает последнее значение
Спасибо за видео! Один вопрос, как парсить по списку ссылок? Есть определённые ссылки на страницы, с которых нужно спарсить title и h1. Как это сделать?
Однозначно подписка ,жду видео по питону
я думаю пора обновить данное видео, можно даже на этом же сайте, думаю всем будет интересно поменялось что то за 3 года или нет)
Спасибо, дружище, всё подробно и по делу. Очень полезное видео.
*Ты лучший спасибо по больше таких уроков*
Спасибо за урок, смог написать парсер под мои цели
Отличное видео, самое годное по парсингу! Автору респект
Дякую за урок. Це було дуже корисно!
Гарного навчання
Очень полезный урок. СПАСИБО
20:50 вместо 200 выдаёт response 403
почитал и пишет что это защита от парсинга стоит
отличный урок. большое спасибо!
Пожалуйста
Классное объяснение .Хоть один человек детально всё показал. СПАСИБО. А видео с применением ООП будет.?
Будет в плейлисте о Джанго
Урок понравился, спасибо. Всё понятно) Даже подписался
Ты просто лучший, огромное спасибо
Спасибо
А почему у меня парсится не страничка объектов а только один объект на страничке??
Отличный урок! Подписался
Подскажите, пожалуйста, получаю ошибку:
'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}].
Здравствуйте я тоже досмотрел все видео и вбил до конца. По всему нету пару советов есть на английских сайтах пока думаю. вот один советует.coderoad.ru/51687872/BeautifulSoup-get_text-возвращает-объект-NoneType
Во-первых в уроке не так написано, там .get_text(strip=True), во-вторых у Вас ошибка в выборе div, где находится класс img-crop, нужно указать правильно вышестоящий div, в котором вы ищите и указать его в строке, которая выше items = soup.find_all('div', class_='ВОТ ТУТ')
Добрый день, сделала парсер все по уроку, парсит только первую страницу, если написать парсить 2 и более, просто дублирует данные с первой страницы. Прошу помощи
ЖИЗА! Решили проблему?
@@НиколайСахаров-к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
Красава! Видос отличный! Спасибо, что заморочился!
Видос годный)
Лайк подписка.
Пойду писать код.
я астановился на 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
Просто отличная подача материала, супер!!!
У меня вопрос, for item in items- зачеп писать и что значит, у меня ошибка выходит и я туплю
чтобы по циклу пробегаться
@@ФаррухбекУлугбеков А почему ошибка?У мене просто тоже помилка виходить:
IndentationError: unindent does not match any outer indentation level
у тебя есть вот такая строка: items = soup.find_all("тег", class_ = "класс"), в переменной items содержится список и ты запускаешь цикл for в котором пробегаешься по этому списку добавляя все элементы которые имеют нужный тебе тег и класс: "title" : item.find("тег", class_ = "класс").get_text(strip = True)
Отступы должны быть одинаковыми, т.е. где-то вводил пробелы, а где-то символ табуляции
Те кто благодарят, вы повторяли за автором? Интересно и полезно, сомнения нет, но нет уже одинаковых классов, все разные, и обучение на этом прерывается. Надо искать другой путь! ))
По образцу этого сайта получается отлично. А, если вариант из нескольких страниц, но там не page, а каждая страница с изменением даты скидки, то не срабатывает. Образец страниц discounts/11 - 11 - 2020 и следующая discounts/01 - 01 - 2021. Если в примере есть cards, catalog, page , то на этом сайте там, где cards идёт discount, а дальше сразу даты и то в искажённом формате.
Ожидаемый результат 'NoneType' object is not iterable
Может, кто подскажет, что надо изменить в коде. Спасибо
Тоже сейчас возник такой вопрос, не могли бы вы подсказать, пожалуйста, если разобрались?
Спасибо за ваш труд,позновательно!
Недоумение и страх были пол года назад. Тогда я первый раз увидел это видео и ушел с него. Ну а теперь буду смотреть до конца,ну и конечно пробовать что то делать. Да, я еще fake_useragent прикручу.
И как оно?
@@dor1k991 Все ОК
Сайт переделали, но главное что все принципы разжеваны и можно без проблем повторить. Так даже интереснее))
Мега-полезный урок! спасибо!
Все доступно, но ещё бы структура кода была бы в рамках ООП :))))
при проверке выводятся пустые списки [] в чём может быть проблема?
такая же проблема
Артём, ты просто неправильные классы указал и вероятно блоки, тебе надо разобраться куда что сувать и научиться это делать на разных сайтах ведь везде структура разная 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")
Если вдруг еще актуально или кому поможет:
Средой должен подсвечиваться метод append, т.е. круглая скобка должна быть рядом с ним, без переноса.
Не cards.append
(
А cards.append(
{}
На первом этапе вместо Response 200
Response 403. Что делать
Всё очень понятно. Спасибо большое! =)
Информативное видео, спасибо огромное!
жму руку! все ясно и понятно!
Спасибо за видео! А как правильно пройтись циклом, если нужно пройти по ссылке заголовка банковской карты и оттуда уже брать доп инфо?
Всё полезно, просто и для тупых. Уважуха и респект!!!
Не ну это лайк однозначно👍🏻
А если, когда мы на вкладке Network, у меня нет вверху пункта cards, то куда кликать?
Искать другой пункт, это же всего название тега
@@andrievskii А на данный момент какой другой пункт искать?
Добрый день С вами вместе пишу код Скажите почему на первом этапе ошибка import requests
ModuleNotFoundError: No module named 'requests'
Эти 2 библиотеки устанавливаются отдельно командой через cmd
Привет, а почему идет дублирование каждой карты в начале каждой страницы???
Из-за использования неправильного div в get_content, если взять class_= 'row' ошибка пропадет
Добрый день, отличный урок, при минимальном знании удалось написать парсер, единственные вопрос с кодировкой, при окрытии файла в экселе русский шрифт отображается вопросиками(
Нужно при парсинге менять принудительно кодировку или открывать файл программой OpenOffice (там пакет с разных программ и они бесплатны)
Я пока его просто открываю на гуг диске и потом скачиваю в exel
Подскажите, пожалуйста, если артикул товара находится непосредственно в самом товаре, на другой странице, а к каталоге, превьюшке его нет. Можно как то это сделать в одном коде? Как вариант можно написать два парсера и потом объединить к примеру по названию, синхронизировать)
Какой шрифт используете в пайчарм? Красивый...
Очень здорово, спасибо за объяснение. Получилось, но единственное, у меня парит только один продукт с каждой страницы, можете подсказать почему так и как исправить?
В целом могу, но нужно видеть код, я же на расстоянии не умею, зайди в наш чат в телеге и напиши там, можешь, тегнуть меня или может кто другой ответит
slov net, prosto bolshoy like
Хотелось бы увидеть парсер страниц, где нет пагинации.
где URL не меняется при смене пагинации.
Классно , спасибо большое !👍🏻
Выводит вместо страниц только карты, 2 страницы выбираю парсить, выводит 1 карту, что делать?
Ну значит сменилось что-то в сайте который парсится или парсер не верно написан. могла быть маленькая ошибка. Что же делать!?!?!?
1. Пошагово провести дебагинг приложения, везде где есть какие-то переменные выводить в консоль и смотреть то там что нужно или нет
2. Присмотреться к коду и увидеть визуально. что не так (только если вы понимаете ЯП а не просто списали по видео код)
Мысль правильная, но не работает, ваш код. Нужно править логику перехода по страницам.