mirror of
https://github.com/coursera-dl/coursera-dl.git
synced 2026-01-23 18:55:24 +00:00
This name corresponds to the name of our github repository. Hopefully there will be less confusion about names. I can't thank enough the author of "coursera-dl" PyPI package @dgorissen who generously gave up that package to us. Thank you!
114 lines
3 KiB
Python
114 lines
3 KiB
Python
# -*- coding: utf-8 -*-
|
|
#
|
|
# you can install this to a local test virtualenv like so:
|
|
# virtualenv venv
|
|
# ./venv/bin/pip install --editable .
|
|
# ./venv/bin/pip install --editable .[dev] # with dev requirements, too
|
|
|
|
from __future__ import print_function
|
|
|
|
import os.path
|
|
import subprocess
|
|
import sys
|
|
|
|
from setuptools import setup
|
|
|
|
from coursera import __version__
|
|
|
|
|
|
def generate_readme_rst():
|
|
"""
|
|
Generate README.rst from README.md via pandoc.
|
|
|
|
In case of errors, we show a message having the error that we got and
|
|
exit the program.
|
|
"""
|
|
|
|
pandoc_cmd = [
|
|
'pandoc',
|
|
'--from=markdown',
|
|
'--to=rst',
|
|
'--output=README.rst',
|
|
'README.md'
|
|
]
|
|
|
|
if os.path.exists('README.rst'):
|
|
return
|
|
try:
|
|
subprocess.call(pandoc_cmd)
|
|
except (IOError, OSError) as e:
|
|
print('Could not run "pandoc". Error: %s' % e, file=sys.stderr)
|
|
print('Generating only a stub instead of the real documentation.')
|
|
|
|
|
|
def read_file(filename, alt=None):
|
|
"""
|
|
Read the contents of filename or give an alternative result instead.
|
|
"""
|
|
lines = None
|
|
|
|
try:
|
|
with open(filename) as f:
|
|
lines = f.read()
|
|
except IOError:
|
|
lines = [] if alt is None else alt
|
|
return lines
|
|
|
|
|
|
generate_readme_rst()
|
|
|
|
long_description = read_file(
|
|
'README.rst',
|
|
'Generate README.rst from README.md via pandoc!\n\nExample: '
|
|
'pandoc --from=markdown --to=rst --output=README.rst README.md'
|
|
)
|
|
requirements = read_file('requirements.txt')
|
|
dev_requirements = read_file('requirements-dev.txt')
|
|
|
|
trove_classifiers = [
|
|
'Development Status :: 4 - Beta',
|
|
'Environment :: Console',
|
|
'Intended Audience :: End Users/Desktop',
|
|
'License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)',
|
|
'Operating System :: OS Independent',
|
|
'Programming Language :: Python :: 2',
|
|
'Programming Language :: Python :: 2.6',
|
|
'Programming Language :: Python :: 2.7',
|
|
'Programming Language :: Python :: 3',
|
|
'Programming Language :: Python :: 3.3',
|
|
'Programming Language :: Python :: 3.4',
|
|
'Programming Language :: Python :: 3.5',
|
|
'Programming Language :: Python :: Implementation :: CPython',
|
|
'Programming Language :: Python :: Implementation :: PyPy',
|
|
'Programming Language :: Python',
|
|
'Topic :: Education',
|
|
]
|
|
|
|
setup(
|
|
name='coursera-dl',
|
|
version=__version__,
|
|
maintainer='Rogério Theodoro de Brito',
|
|
maintainer_email='rbrito@ime.usp.br',
|
|
|
|
license='LGPL',
|
|
url='https://github.com/coursera-dl/coursera-dl',
|
|
|
|
install_requires=requirements,
|
|
extras_require=dict(
|
|
dev=dev_requirements
|
|
),
|
|
|
|
description='Script for downloading Coursera.org videos and naming them.',
|
|
long_description=long_description,
|
|
keywords=['coursera-dl', 'coursera', 'download', 'education', 'MOOCs', 'video'],
|
|
classifiers=trove_classifiers,
|
|
|
|
packages=["coursera"],
|
|
entry_points=dict(
|
|
console_scripts=[
|
|
'coursera-dl=coursera.coursera_dl:main'
|
|
]
|
|
),
|
|
|
|
platforms=['any'],
|
|
)
|