Парсинг на Python | Зарабатываем на фрилансе | Копируем сайт | Requests, BS4, JSON
Вставка
- Опубліковано 6 лис 2021
- Фриланс. Обучение (Web-Scraping) веб парсингу на Python. В данном видео выполняем заказ взятый на фрилансе по парсингу сайта.
Задача состояла в том, что бы скопировать все статьи, с общим количеством более 3000 тысяч, на момент записи видео. Выполняем задачу с помощью библиотек requests и beautifulsoup, с записью данных в json файл.
💰 Поддержать проект:
/ pythontoday
yoomoney.ru/to/410019570956160
🔥 Стать спонсором канала:
/ @pythontoday
****Ссылки****
Дешевый/надежный сервер в Европе:
zomro.com/?from=246874
promo_code:
zomro_246874
Хороший proxy сервис:
proxy6.net/a/149995
Парсинг динамического сайта на Python + Telegram бот на AIOGram
• Парсинг динамического ...
Выполняем заказ на фрилансе | Видео в GIF
• Практика Python | Выпо...
Парсинг криптобиржи | Торговый бот | API криптобиржи:
• Парсинг криптобиржи | ...
Асинхронный парсинг на Python | Ускоряем код в 10 раз
• Асинхронный парсинг на...
Крутой заказ на фрилансе | Подбираем забытый пароль к Excel файлу с помощью Python:
• Крутой заказ на фрилан...
Пишем Telegram бота на Python + Загружаем Telegram бота на сервер(хостинг):
• Пишем Telegram бота на...
Плейлист по распознаванию лиц на Python:
• Распознавание лиц | Fa...
Плейлист по парсингу сайтов на Python:
• Парсинг/Scraping
if _name_ == '__main__' | Зачем? И почему нужно использовать
• Python с нуля | if __n...
Код проекта на github:
github.com/pythontoday/scrap_...
И в telegram канале:
t.me/python2day
****Соц.сети****
Telegram: t.me/python2day
#scraping #webscraping #парсинг #requests #python #фриланс
Поторопился и допустил ошибку. Если работаете с сессиями, а не с голым requests.get, лучше, и даже нужно закрывать сессию. Оберните код цикла в контекстный менеджер with:
with requests.Session() as session:
И в первой и во второй функции. На гите обновил репозиторий.
Большое спасибо за фидбэк и поддержку! 🤝
А можно пояснение, почему именно session и что оно тут дает по сравнению с голым requests.get в конкретном примере? Из документации создается представление, что оно в основном для работы с куки и сохранения некоторых штук, чтобы не передавать их с каждым новым запросом, но здесь мне непонятно, что оно дает.
Дружище, видос классный и познавательный, сам много лет занимаюсь вебом, но на тёмной стороне PHP, есть одно замечание, но не по парсингу, а по хранению данных. Ты используешь json, и для видосов ранее это подходила, а сейчас ты парсишь текст, и если хоть в одном тексте втретится двойная кавычка ( " ) то она поломает абсолютно весь файл, что не допустимо. Для таких данных неплохо подошел бы тот же самый xml, синтаксис похож на html, но когда ты будешь хранить в нём данные, то гораздо удобнее будет ими оперировать, да он чутка прожорливее по обьёму, но он менее капризен для данных внутри. Желаю успехов и надеюсь научишь аудиторию не только json'у но и другим типам данных)
А для существующего проекта было бы уместно добавить реплейс не только на перенос строки, но и на замену двойных кавычек на одинарные
@@cirnocirno6101 сессия создаёт сессию😄 проще говоря она создаёт подключение и гоняет все данные через него.
Реквест втупую при каждом запросе создаёт подключение и после получения ответа его закрывает.
На создание подключения уходит время. По этому сессия быстрее.
@@MrTASGER спасибо, о том что это банально быстрее работает, не знал.
@@steel_rat Джейсоны просто везде в ходу, в той же бигдате, например, всякие загрузки на входе. Я думаю, двойная кавычка ничего не поломает, а просто как-то заскринится типа добавкой обратного слеша перед ней. Но я до конца в этом не уверен.
С уверенностью скажу, что то, что ты делаешь и твой канал абсолютные фавориты на рутубе. Огромное спасибо за практику! Конечно лайк и жду продолжения темы на Django! Спасибо друг!
Вы ошиблись, rutube по другому адресу
Огромное спасибо за фидбэк и поддержку!
Согласен полностью. Сам я практикую flask, но в практике на любом куске кода люблю принтование и разбор как работает эта штука, давайте ее разберем подробнее. Мне кажется такой подход не отвлекает от общей темы, а наоборот дает +100500 к пониманию материала. Есть каналы, где тупо пробегутся типа это сюда, это тут и всё. Конечно нужно думать самому, но подробный разбор каких-то штуковин в коде точно мотивирует на свершения.
@@PythonToday как ты поставил боковую панель с проводником?
Видео на паузе) Очень интересно продолжение! Большое спасибо за практику и за то, что тратишь свое время, лайк 👍
Большое спасибо!
Смотрю ваши ролики не только и не столько из-за полезности информации и высококачественного монтажа, сколько ради танцующего кота ❤
Очень хорошая и понятная подача, информационные принты, лично мне, как начинающему, очень помогают. Просто супер!!!
Большое спасибо за фидбэк!
Спасибо за видео! Очень залипающе у тебя получается)
Спасибо брат! Твои видео просто пушка. Удачи! Жду очень много таких.
Благодарю за фидбэк!
Спасибо за опыт, за подробное изложение, и за то, что тратишь свое время.
Благодарю за фидбэк! Рад что видео полезны.
Просто огонь 🔥🔥🔥 очень доступно подаёте материал! Спасибо!
Большое спасибо за фидбэк! Рад что полезно и интересно)
дядь, дай бог тебе здоровья, очень круто и понятно
чувак, твой канал просто находка, респект👍
Супер! Большое тебе спасибо, лайк и коммент за продолжение серии!
Большое спасибо за фидбэк!
Лайк авансом) Уверен, что как всегда - годно🔥
Большое спасибо!
просто и быстро у автора так всё записано, без лишнего бубнежа. мне кажется если в статье будут кавычки то json сломается. спасибо, респект!
Благодарю за фидбэк!
Привет, коллега. Отличный выпуск, практика то что нужно новичкам. Лайк с подпиской за такой урок обязателен =))
Большое спасибо за фидбэк и поддержку!
Ага да да для новичков епта
@@user-uz5yr5me5r для продвинутых новичков)) Не с курсов конечно же.
Спасибо огромное за то, что делитесь опытом! Очень полезно!
Благодарю, рад что видео полезны!
Огромное спасибо, очень помог разобраться в этом. По больше бы таких видео в интернете
Спасибо за поддержку!
Качественный контент, делай пожалуйста и дальше бро!
Большое спасибо за поддержку!
Очень понятно, очень интересно!
классная работа, спасибо за видео, понятно что делаем, принты тоже помогают
Большое спасибо за фидбэк!
Прекрасный контент, продолжай пилить такие видосы.
Большое спасибо за фидбэк! Рад что интересно
С начала цикла видео про скрапинг ваш подход эволюционирует. От видео к видео меняются детали. Было бы здорово, если бы вы сделали какой-то промежуточный гайд, в котором суммировался бы ваш опыт. Спасибо за контент!
Благодарю за фидбэк! Да вроде особо не менял ничего, и все детально проговариваю.
Молодец, нормально делаешь, все понятно и дикция чёткая.
Благодарю!
Огромная благодарность за познавательный контент.
Благодарю за фидбэк!
Спасибо за Ваши труды.
Благодарю за поддержку!
Как раз учу Django, пишу свой блог. Как всегда лайк.
Благодарю!
Держу в курсе. Ты не зря выкладывать ролики.
Благодарю за фидбэк!
Всё отлично лайк подписка ждём новых видео!
Большое спасибо за поддержку!
Так как видео носит обучающий характер printы очень полезны! {'PythonToday' : 'качество'}
Благодарю!
Как всегда класс. Давненько про селен не было. Хотел предложить тему для видоса: решение капчи в селене. Возможно с помощью расширения для хрома..
Благодарю за фидбэк. На канале не будет видео по решению капчей. Думаю понятно почему ¯\_(ツ)_/¯
Cool! Принтуй и дальше код, только так становиться понятно. Еще бы multiprocessing для быстроты сюда вставить.
Спасибо огромное за видеоролик, тоже недавно такой делал)
Благодарю за фидбэк!
Отличный материал продолжай тему!
Большое спасибо за поддержку!
А за видос, да и за канал, спасибо!
Благодарю за поддержку!
❤ Спасибо ❤
Так просто я ещё ни у кого не учился
рад что полезно, большое спасибо за фидбэк!
В первый раз увидел код на пайтоне - и в принципе все абсолютно понятно
Самый простой для изучения/чтения язык. Благодарю за фидбэк!
Шикарное видео.
Будет здорово чтобы набралось 1500 лайков и автор сделал продолжение!
Сайт на Django +
Спасибо 👍
Благодарю за поддержку!
Отличное видео для повторения прошлых материалов
Благодарю!
Спасибо топ контент!!
Благодарю!
спасибо, в enumerate можно передавать значение с которого будет идти перечисление,
например emunerate(b, 1). Просто в конце не надо будет единицу прибавлять.
Благодарю за фидбэк!
Отличный язык... Спасибо!
Благодарю!
Ты просто космос 👍👍👍👍💥💥💥
Благодарю!
Видео супер)
Хотелось бы видео про парсинг участников и чата телеграмм групп, которые по приглашению (не публичные)
Благодарю за фидбэк!
Спасибо!
Благодарю за фидбэк!
*Один из самых лучших каналов в истории человечества* 💪
Большое спасибо за фидбэк и поддержку!
Оставляю комментарий под видео.
Моё почтение.
Спасибо за фидбэк!
С помощью ваших вдео учусь парсить сайты. Вот столкнулся с задачкой, где не могу решить условия как выбирать объявления появившееся за последние семь дней? Стоит применить celery? Подскажите в каком направлении идти. Сасибо.
Спарсите объявления из раздела недвижимость с сайта.
Парсер должен заходить на сайт раз в день и забирать только новые объявления (те, которых нет в нашей базе). При первом заходе парсер должен спарсить объявления за предыдущих 7 дней.
Поля для сохранения выберите самостоятельно. Обязательно сохраните телефон объявления.
Крутое видео. Можно не принтовать, а писать лог. По своему опыту знаю насколько полезен лог даже в скрапинге. Мало ли что может случиться во время выполнения скрипта.
Благодарю за фидбэк! Ты прав, нужно изучить логирование.
ну котика, кнш, очень качает. Гениально
Благодарю!
Cпасибо
Сила джуниора 💪🔥🔥
Ноль в программировании, но посмотрел полностью. Спасибо)
Большое спасибо за фидбэк!
Круто)))
Спасибо за фидбэк!
Надо было сказать в конце, что лучше всего в начале выбрать себе не слишком сложную цепочку мастера (Найти у профисионала, много гайдов, например у меня это всегда: Eq, компрессор и лимитр) и всегда работать с ней, набирается опытом в написание структуры и уже когда опыт придёт занимается экспериментами.
Красава! Я тоже хочу так уметь!
Вливайся! Главное чтоб глаза горели и каждый день что нить делать
Супер
Как всегда топ контент!! хотел бы спросить у вас совета. Насколько нормальная практика парсинга в админке сайта(например вордпресс или опенкарт) для того чтобы обновлять автоматически запросом POST некоторые пункты. Насколько это целесообразно?
Что значит парсинг в админке?
Я например, сейчас пишу скрипт прямо в function.php и это не критично.
Главное это изолировать доступ к функции и если работаете с потоками, будьте предельно бдительны. Но лучше написать плагин.
А периодически пинговать скрипт тоже норм практика
@@user-yc8ey8ym1k спасибо) я уже осознал , насколко глупая идея быллаа))
Уже наверное не актуально но тема интересная, очень.
Да, не путать с пирсингом! :)
Опасно
вообще не зря)
Благодарю за фидбэк!
Не для новичков, таких как я))) ничего не понял, но очень приятно смотреть на результат)))
Спасибо за фидбэк! Главное ежедневная практика и все будет!
Бог парсинга)
Благодарю. Но только учусь
видос классный, как и канал, а есть продолжение с джанго ?
С помощью ваших вдео учусь парсить сайты. Вот столкнулся с задачкой, где не могу решить условия как выбирать объвления появившееся за последнии семь дней? Стоит применить celery? Подскажите в каком направлении идти. Сасибо
Спарсите объявления из раздела недвижимость с сайта.
Парсер должен заходить на сайт раз в день и забирать только новые объявления (те, которых нет в нашей базе). При первом заходе парсер должен спарсить объявления за предыдущих 7 дней.
Поля для сохранения выберите самостоятельно. Обязательно сохраните телефон объявления.
Котэ рубит ритм!
Джангокотэ это будет бомбэздно! Джанго большой, много котэ нужно будет )
Благодарю за фидбэк 😀
Хорошая реализация. Но только если статей будет там достаточно много, то хранить их в оперативной памяти будет очень затратно, если вообще не критично. Поэтому я бы примерно каждую 1000 статей сохранял данные, чтобы подстраховаться)
Поэтому сразу надо писать в БД :)
Видосы лучшие, просто слов нет чтобы описать, первый раз вижу чтобы всё настолько на блюдечке было. Но что насчёт node js и js в целом? Мне кажется, нода во всём пайтон превосходит, так на js ещё и фронтенд писать можно, может я просто чего-то про питон не знаю, если да то в чём преимущества? в общем было бы очень конечно круто если бы node js был темой канала, потому что такой формат видео просто идеален)) (давайте кто согласен лайк под комментом чтобы автор увидел)))
Приветствую, благодарю за фидбэк! "круто если бы node js был темой канала" - это ведь не канал по JS)) В дальнейшем планировал серию видео по drf + vue. А что касаемо преимуществ Python либо JS, так в принципе думаю не нужно сравнивать эти два языка. Каждый лучший в своем деле.
beautiful !!!
Thanks!
Подскажите пожалуйста можно ли спарсить данные под определённые даты с сайта и как лучше это сделать?
Ну конечно нравится
Спасибо!
@@PythonToday возможно я пропустил ролик, а какм софтом вы пользуетесь для написания и инструментами желательно под винду
Благодарю за видое! Подскажи, на каких ресурсах ищешь заказы?
Спасибо за фидбэк! По биржам есть видео на канале, но последний год только сарафанное радио и старые заказчики.
Добрый день можете побольше раз казать об этом и показать если есть примеры где такие сайты продаются
Комментаторы, помогите пожалуйста. Появилась необходимость искать фотки и скачивать их в хороше разрешении. Поискал в Yandex и Google картинках API, ничего не нашел. Решился парсить, но selenium я не могу использовать. Только requests и bs4. Если парсить только страничку со списком изображений, то изображения будут плохого качества, но для того, чтобы их получить в хорошем качестве, надо нажать на картинку. Как это сделать в requests не знаю. Помогите пожалуйста.
👌
подскажите, питоном можно ли спарсить чаты например с WhatsApp ?
Посмотрел, почти все ролики про парсинг, а похожего сайта как у меня в заказе не нашел. Это сайт недвижимости, проблема в парсинге номера телефона,там нужно кликнуть по кнопке "показать номер", можно через selenium затем bs4 и забираем номер, мне это метод кажется очень долгим. Номер телефона отдается по API из другой таблицы доступ к которой через токены. Есть ли вариант как-то подменять токены. чтобы не юзать селениуим и бс4 , а брать номер по api?
Какой компилятор используется в данном видео ?
Комментария для продвижения
Спасибо за поддержку!
Пожалуйста сделай видео обучающиее парсингу более сложных сайтов (например, когда информация появляется при нажатии на кнопку)
Можно использовать post и передать в него dataform запроса, тогда ты попадёшь на нужную инфу
Я как тот кот, сидел и мотал головой пока играла музыка!
Каждый раз так делаю при монтаже 👍
Можете делать видео про как записать в базу данных сайта который сделан на django
Hot!!
Thanks 👍
Можно ли копировать и переводить данные на любой язык при переносе?
Здраствуйте, отличный контент, сильно хочется научиться всему этому, подскажите с чего начать с нуля?
Приветствую, с основ синтаксиса языка
Почему парсинг с локального IP? Может быть достаточно неприятно, если после парсинга той или иной страницы с товего IP (если он статический) тебя заблокают на сайте и перекинут тобой ip, в общую базу "злостных ботоводов парсеров", тогда вообще грусть печаль, что заблокают не только на этом сайте но и на других(очень грустная проблема для меня, когда я сижу в офисе, где все эти запросы идут с одного IP). Я использую TOR для того что бы такого не случилось. Да, возможно заморочно, но помогает. Быстро менять IP не проблема( быстро это раз в пару секунд для меня) и кода для этой смены всего две функции каждая по строки 4. Но нужно установить TOR и там в файлах и папках поковыряться и поперекидывать и понастраивать файлы.
PythonToday, запиши на эту тему видео пж.
братан, не обращай внимания на "учителей", делай свое дело!! вопрос: не планируешь освещать в практической плоскости ООП, всякие метаклассы, работу с бд, itertools и пр.?
Все бы снял разом, да времени не хватает. Большое спасибо за поддержку!
Хм, может пропустил ... А что за сайт для фриланса?
Давай еще
Замечательный канал, замечательный ролик!
Но, будучи старым ворчливым дедом, замечу, что не краулер, наверное, получился ))) Тем более, что в тексте статьи м.б. ещё картинки, графики, таблички... Но, видимо, заказчик сам определяет, что ему достаточно.
Благодарю за фидбэк!
Отличное видео. Столкнулся с проблемой защиты от бота, на сайте dns-shop. Как парсить такие сайты?
Не инструкции или методички "как парсить такие сайты". Каждый проект индивидуален, нужно сидеть и копаться.
for i, url in enumerate(urls_list, 1): # в i будет индекс начиная с 1
Большое спасибо за фидбэк!
то ли этот сайт парсить слишком легко то ли научился уже более менее,спасибо тебе)
Спасибо за фидбэк! Рад что видео полезны.
Привет. Монетизируй видео, ставь рекламу. Твой контент это заслужил.
Приветствую, благодарю за фидбэк! 👍
Было бы здорово, если показал бы, как на django делать!
Сделаем
Сайт на джанго, в студию
Тоже важно🎉
на каком сайте лучше искать заказы?
А сами картинки требуется скачивать для заказа? Или это только если заказчик это указал?
В данном случае не было установки скачивать, а так - по желанию.
Возникли проблемы с импортом библиотеки beautifulsoup. В терминале при загрузке библиотек не каких ошибок нет, но при запуске скрипта выдает ошибку " ImportError: cannot import name 'beautifulsoup' from 'bs4' ". Хотя библиотека установлена.
@Arkastar tv Life
Так и сделал. Всё заработало.
сори за тупой вопрос ну я не в езжаю почему родительский класс post , a не допустим class="post-media-full" 15:55