Я использую Ubuntu 11.10 и amp; хочу скачать видео в Стэнфордском открытом классе , в основном для просмотра в автономном режиме,
Пример: http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=WebApplications
спасибо заранее
Скопируйте следующий код в новом документе и сохраните его в новом каталоге как downloader.py.
#!/usr/bin/env python
import urllib
from BeautifulSoup import BeautifulSoup
COURSE_URL = 'http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=WebApplications'
def download_video(video_name):
course_name = COURSE_URL.split('course=')[1]
request = urllib.urlopen('http://openclassroom.stanford.edu/MainFolder/'\
'courses/{0}/videos/{1}.xml'.format(course_name,
video_name))
response = request.read()
flv_name = response.split('<videoFile>')[1].split('</videoFile>')[0]
print 'Downloading: %s' % flv_name
urllib.urlretrieve('http://openclassroom.stanford.edu/MainFolder/courses/'\
'{0}/videos/{1}'.format(course_name, flv_name),
flv_name)
def main():
request = urllib.urlopen(COURSE_URL)
response = request.read()
soup = BeautifulSoup(response)
results = soup.findAll('div', {'class': 'results-list'})
for result in results:
lists = result.findAll('li')
for li in lists:
urls = li.findAll('a')
for url in urls:
video_name = str(url).split('video=')[1].split('&')[0]
download_video(video_name)
if __name__ == '__main__':
main()
Откройтесь новый терминал (нажмите Alt+F2 и введите 'терминал'), и удостоверьтесь, что Вам установили пакет python-beautifulsoup путем ввода:
sudo apt-get install python-beautifulsoup
Перейдите к каталогу, где downloader.py файл расположен (использование команды 'CD').
Выполните файл с помощью команды Python:
python downloader.py
Ожидайте, пока все видеофайлы не загружаются. Они должны появиться в том же каталоге, где downloader.py файл расположен.
Если бы Вы хотите загрузить другой курс, необходимо было бы заменить переменную 'COURSE_URL' в downloader.py файле с адресом URL курса, который Вы хотите загрузить.
Используйте Firefox с Video DownloadHelper дополнением.
Это работает для меня:
sudo apt-get install youtube-dl
youtube-dl 'SOMEURL'
, например,
youtube-dl 'http://openclassroom.stanford.edu/MainFolder/VideoPage.php?course=ufldl&video=03.1-NeuralNetworks-Representation&speed=100'
Я только что написал свой собственный простой загрузчик, основанный на python 3.5 и библиотеке простых запросов. Там нет магии. Проверьте
, просто запустите python downloader.py
, выберите свой курс и наслаждайтесь параллельной загрузкой :)
Сценарий сначала извлечет полный список курсов и позволит выбирать. Затем, после того, как вы выберете, он извлечет описание курса и загрузит все его видео в папку с именем курса.