2016-06-27 14:12:56 -05:00
|
|
|
#!/usr/bin/env python
|
|
|
|
'''
|
|
|
|
setup.py - brozzler setup script
|
|
|
|
|
2017-01-20 23:36:23 -08:00
|
|
|
Copyright (C) 2014-2017 Internet Archive
|
2016-06-27 14:12:56 -05:00
|
|
|
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
you may not use this file except in compliance with the License.
|
|
|
|
You may obtain a copy of the License at
|
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
'''
|
2016-04-25 20:02:11 +00:00
|
|
|
|
2014-05-20 02:42:40 -07:00
|
|
|
import setuptools
|
2016-07-29 12:56:10 -05:00
|
|
|
import os
|
|
|
|
|
|
|
|
def find_package_data(package):
|
|
|
|
pkg_data = []
|
|
|
|
depth = len(package.split('.'))
|
|
|
|
path = os.path.join(*package.split('.'))
|
|
|
|
for dirpath, dirnames, filenames in os.walk(path):
|
|
|
|
if not os.path.exists(os.path.join(dirpath, '__init__.py')):
|
|
|
|
relpath = os.path.join(*dirpath.split(os.sep)[depth:])
|
|
|
|
pkg_data.extend(os.path.join(relpath, f) for f in filenames)
|
|
|
|
return pkg_data
|
2014-01-21 06:41:46 +00:00
|
|
|
|
2016-05-11 12:05:50 -07:00
|
|
|
setuptools.setup(
|
|
|
|
name='brozzler',
|
2017-04-05 17:01:06 -07:00
|
|
|
version='1.1b11.dev226',
|
2015-07-13 17:09:39 -07:00
|
|
|
description='Distributed web crawling with browsers',
|
2016-06-16 14:18:24 -05:00
|
|
|
url='https://github.com/internetarchive/brozzler',
|
2015-07-13 17:09:39 -07:00
|
|
|
author='Noah Levitt',
|
|
|
|
author_email='nlevitt@archive.org',
|
2016-10-13 14:59:31 -07:00
|
|
|
long_description=open('README.rst', mode='rb').read().decode('UTF-8'),
|
2014-01-23 18:26:20 -05:00
|
|
|
license='Apache License 2.0',
|
2016-11-04 17:46:23 -07:00
|
|
|
packages=['brozzler', 'brozzler.dashboard'],
|
2016-07-29 12:56:10 -05:00
|
|
|
package_data={
|
2016-12-20 16:33:25 -08:00
|
|
|
'brozzler': [
|
|
|
|
'js-templates/*.js*', 'behaviors.yaml', 'job_schema.yaml'],
|
2016-11-04 17:46:23 -07:00
|
|
|
'brozzler.dashboard': find_package_data('brozzler.dashboard'),
|
2016-07-29 12:56:10 -05:00
|
|
|
},
|
2016-06-27 12:43:24 -05:00
|
|
|
entry_points={
|
|
|
|
'console_scripts': [
|
2016-06-27 14:12:56 -05:00
|
|
|
'brozzle-page=brozzler.cli:brozzle_page',
|
|
|
|
'brozzler-new-job=brozzler.cli:brozzler_new_job',
|
|
|
|
'brozzler-new-site=brozzler.cli:brozzler_new_site',
|
|
|
|
'brozzler-worker=brozzler.cli:brozzler_worker',
|
2016-06-30 15:16:04 -05:00
|
|
|
'brozzler-ensure-tables=brozzler.cli:brozzler_ensure_tables',
|
2016-11-30 00:52:14 +00:00
|
|
|
'brozzler-list-captures=brozzler.cli:brozzler_list_captures',
|
2017-01-12 07:50:58 +00:00
|
|
|
'brozzler-list-jobs=brozzler.cli:brozzler_list_jobs',
|
|
|
|
'brozzler-list-sites=brozzler.cli:brozzler_list_sites',
|
|
|
|
'brozzler-list-pages=brozzler.cli:brozzler_list_pages',
|
2016-11-04 17:46:23 -07:00
|
|
|
'brozzler-dashboard=brozzler.dashboard:main',
|
2016-07-05 18:46:42 -05:00
|
|
|
'brozzler-easy=brozzler.easy:main',
|
2016-09-14 17:04:01 -07:00
|
|
|
'brozzler-wayback=brozzler.pywb:main',
|
2016-06-27 12:43:24 -05:00
|
|
|
],
|
|
|
|
},
|
2015-09-23 00:49:20 +00:00
|
|
|
install_requires=[
|
|
|
|
'PyYAML',
|
|
|
|
'youtube-dl',
|
2016-11-08 14:11:46 -08:00
|
|
|
'reppy==0.3.4',
|
2015-09-23 00:49:20 +00:00
|
|
|
'requests',
|
2016-12-07 11:18:41 -08:00
|
|
|
'websocket-client!=0.39.0',
|
2016-10-03 17:06:58 -07:00
|
|
|
'pillow==3.3.0',
|
2017-03-15 14:59:51 -07:00
|
|
|
'urlcanon>=0.1.dev16',
|
2017-03-07 17:52:38 -08:00
|
|
|
'doublethink>=0.2.0.dev71',
|
2016-04-07 23:35:20 +00:00
|
|
|
'rethinkdb>=2.3,<2.4',
|
2016-10-04 21:16:16 +11:00
|
|
|
'cerberus==1.0.1',
|
2016-12-19 17:30:09 -08:00
|
|
|
'jinja2',
|
2016-05-11 12:05:50 -07:00
|
|
|
],
|
2016-06-27 12:43:24 -05:00
|
|
|
extras_require={
|
2016-11-04 17:46:23 -07:00
|
|
|
'dashboard': ['flask>=0.11', 'gunicorn'],
|
2017-03-15 14:59:51 -07:00
|
|
|
'easy': [
|
2017-03-24 13:55:23 -07:00
|
|
|
'warcprox>=2.1b1.dev60',
|
2017-03-15 14:59:51 -07:00
|
|
|
'pywb',
|
|
|
|
'flask>=0.11',
|
|
|
|
'gunicorn'
|
|
|
|
],
|
2016-06-27 12:43:24 -05:00
|
|
|
},
|
2014-01-21 06:41:46 +00:00
|
|
|
zip_safe=False,
|
|
|
|
classifiers=[
|
2016-05-11 12:05:50 -07:00
|
|
|
'Development Status :: 4 - Beta',
|
2014-01-21 06:41:46 +00:00
|
|
|
'Environment :: Console',
|
2014-01-23 16:18:13 -05:00
|
|
|
'License :: OSI Approved :: Apache Software License',
|
2015-07-09 18:36:07 -07:00
|
|
|
'Programming Language :: Python :: 3.4',
|
2016-12-19 17:30:09 -08:00
|
|
|
'Programming Language :: Python :: 3.5',
|
2015-07-13 17:09:39 -07:00
|
|
|
'Topic :: Internet :: WWW/HTTP',
|
2014-01-21 06:41:46 +00:00
|
|
|
'Topic :: System :: Archiving',
|
|
|
|
])
|