Как скачать видео Стэнфордского открытого класса?

Я использую Ubuntu 11.10 и amp; хочу скачать видео в Стэнфордском открытом классе , в основном для просмотра в автономном режиме,

Пример: http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=WebApplications

спасибо заранее

0
задан 19 October 2011 в 11:52

4 ответа

  1. Скопируйте следующий код в новом документе и сохраните его в новом каталоге как 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()
    
  2. Откройтесь новый терминал (нажмите Alt+F2 и введите 'терминал'), и удостоверьтесь, что Вам установили пакет python-beautifulsoup путем ввода:

    sudo apt-get install python-beautifulsoup
    
  3. Перейдите к каталогу, где downloader.py файл расположен (использование команды 'CD').

  4. Выполните файл с помощью команды Python:

    python downloader.py
    
  5. Ожидайте, пока все видеофайлы не загружаются. Они должны появиться в том же каталоге, где downloader.py файл расположен.

  6. Если бы Вы хотите загрузить другой курс, необходимо было бы заменить переменную 'COURSE_URL' в downloader.py файле с адресом URL курса, который Вы хотите загрузить.

0
ответ дан 19 October 2011 в 11:52

Используйте Firefox с Video DownloadHelper дополнением.

0
ответ дан 19 October 2011 в 11:52

Это работает для меня:

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' 
0
ответ дан 19 October 2011 в 11:52

Я только что написал свой собственный простой загрузчик, основанный на python 3.5 и библиотеке простых запросов. Там нет магии. Проверьте

, просто запустите python downloader.py, выберите свой курс и наслаждайтесь параллельной загрузкой :)

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

0
ответ дан 19 October 2011 в 11:52

Другие вопросы по тегам:

Похожие вопросы: