Каким будет результат выполнения кода?
Anonymous Poll
59%
True, False
3%
True, True
9%
False, True
9%
False, False
9%
Error
9%
Узнать ответ
Каким будет результат выполнения кода?
Anonymous Poll
11%
Ally
57%
Sam
11%
None
4%
Student
14%
Error
4%
Узнать ответ
Скачиваем видео с YouTube
Пакет
Для работы нам необходимо создать объект класса YouTube. Помимо ссылки на видео в конструктор можно передать в качестве параметров функции для обработки прогресса загрузки и завершения.
Большинство видео на ютубе не имеют аудиодорожки на потоках с высоким разрешением, свыше 720p — это связано с технологией передачи DASH, которую использует ютьюб. Решение данной проблемы покажем в следующем посте.
На картинке мы показали как отфильтровать потоки с прогрессивной передачей и выбрать из полученного списка с максимальным доступным разрешением до 720p.
Для загрузки выбранного потока используем функцию
#youtube
Пакет
pytube
предоставляет всю небходимую функциональность для скачивания видео с YouTube, а также для сбора всей информации о нем.Для работы нам необходимо создать объект класса YouTube. Помимо ссылки на видео в конструктор можно передать в качестве параметров функции для обработки прогресса загрузки и завершения.
Большинство видео на ютубе не имеют аудиодорожки на потоках с высоким разрешением, свыше 720p — это связано с технологией передачи DASH, которую использует ютьюб. Решение данной проблемы покажем в следующем посте.
На картинке мы показали как отфильтровать потоки с прогрессивной передачей и выбрать из полученного списка с максимальным доступным разрешением до 720p.
Для загрузки выбранного потока используем функцию
download()
, в функцию можно передать в качестве параметров путь до директории для сохранения и имя файла.#youtube
Объединяем видео и аудио потоки
Итак, дополнение к предыдущему посту.
Из-за технологии потоковой передачи DASH (Dynamic Adaptive Streaming over HTTP), используемой youtube, мы не можем получить сразу видео в нужном качестве со звуковой дорожкой из-за ее отсутствия в потоке.
В качестве решения мы можем по отдельности забрать аудио и видео и объединить с помощью утилиты ffmpeg. Для этого выбираем нужные потоки
#youtube
Итак, дополнение к предыдущему посту.
Из-за технологии потоковой передачи DASH (Dynamic Adaptive Streaming over HTTP), используемой youtube, мы не можем получить сразу видео в нужном качестве со звуковой дорожкой из-за ее отсутствия в потоке.
В качестве решения мы можем по отдельности забрать аудио и видео и объединить с помощью утилиты ffmpeg. Для этого выбираем нужные потоки
video
и audio
, после чего передаем url
'ы в команду для инициирования создания процесса для скачивания и объединения потоков с помощью ffmpeg
.#youtube
Библиотека Numpy. Манипуляции с формой
Как мы уже говорили у массива можно посмотреть его форму через атрибут shape. Но его можно изменить, вместе с этим изменится и форма массива. Как это работает?
Сначала массив будет приведен к одномерному, а после изменится так, как мы его зададим. Мы можем сделать массив одномерным через метод revel(). Аналогом изменения атрибута служит метод reshape()
Еще один метод для манипуляции с формой - transpose(). Он берет столбы и превращает в строки.
#numpy
Как мы уже говорили у массива можно посмотреть его форму через атрибут shape. Но его можно изменить, вместе с этим изменится и форма массива. Как это работает?
Сначала массив будет приведен к одномерному, а после изменится так, как мы его зададим. Мы можем сделать массив одномерным через метод revel(). Аналогом изменения атрибута служит метод reshape()
Еще один метод для манипуляции с формой - transpose(). Он берет столбы и превращает в строки.
#numpy
Что выведет данный код?
Anonymous Poll
12%
False, False
18%
True, False
15%
False, True
21%
True, True
35%
Узнать ответ
Работаем с буффером обмена
Здесь всё просто: есть пакет
В этом пакете есть две основные функции —
Таким образом, можно прямо через код копировать вывод программы в буфер обмена вместо того, чтобы делать это вручную.
#pyperclip
Здесь всё просто: есть пакет
pyperclip
, который позволяют отправлять текст в буфер обмена вашего компьютера и получать его оттуда.В этом пакете есть две основные функции —
copy()
и paste()
, по названию которых понятно их предназначения.Таким образом, можно прямо через код копировать вывод программы в буфер обмена вместо того, чтобы делать это вручную.
#pyperclip
Что выведет данный код?
Anonymous Poll
18%
69
10%
420
15%
489
33%
True
18%
False
3%
0
5%
Узнать ответ
Как работают статические методы
Статические методы создаются в классе при помощи декоратора
Такой тип методов не может модифицировать ни объект, ни сам класс. То есть передавать объект или класс и прописывать
Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть.
#ооп
Статические методы создаются в классе при помощи декоратора
@staticmethod
. Такие методы привязаны к классу, а не объекту — в этом и есть основное отличие.Такой тип методов не может модифицировать ни объект, ни сам класс. То есть передавать объект или класс и прописывать
self
или cls
в аргументах не нужно.Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть.
#ооп
Топ. Как парсить YouTube: скрапинг видео, комментариев и других данных
Ищете подходящий YouTube-скрапер? В этой статье вы найдёте лучшие веб-скраперы, которые можно использовать для извлечения данных из YouTube, а также узнаете об особенностях создания собственного скрапера.
Читать статью
#топ
Ищете подходящий YouTube-скрапер? В этой статье вы найдёте лучшие веб-скраперы, которые можно использовать для извлечения данных из YouTube, а также узнаете об особенностях создания собственного скрапера.
Читать статью
#топ