Skip to content

Commit 5c927db

Browse files
committed
pypi
1 parent 4af87de commit 5c927db

File tree

6 files changed

+228
-0
lines changed

6 files changed

+228
-0
lines changed

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,6 @@ db.sqlite3*
66
*.swp
77
proxy_py/settings.py
88
env/
9+
dist/
10+
proxy_py.egg-info
11+
proxypy.egg-info/

LICENSE renamed to LICENSE.txt

File renamed without changes.

MANIFEST.in

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Include the README
2+
include *.md
3+
4+
# Include the license file
5+
include LICENSE.txt
6+
7+
# Include the data files
8+
# recursive-include data *
9+

README.md

+4
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@ proxy_py is a program which collects proxies, saves them in a database
44
and makes periodically checks.
55
It has a server for getting proxies with nice API(see below).
66

7+
## Where is the documentation?
8+
9+
It's [here](http://proxy-py.readthedocs.io)
10+
711
## How to build?
812

913
1 Clone this repository

setup.cfg

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[bdist_wheel]
2+
# This flag says to generate wheels that support both Python 2 and Python
3+
# 3. If your code will not run unchanged on both Python 2 and 3, you will
4+
# need to generate separate wheels for each Python version that you
5+
# support.
6+
# universal=1
7+

setup.py

+205
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,205 @@
1+
"""A setuptools based setup module.
2+
3+
See:
4+
https://packaging.python.org/en/latest/distributing.html
5+
https://github.com/pypa/sampleproject
6+
"""
7+
8+
# Always prefer setuptools over distutils
9+
from setuptools import setup, find_packages
10+
# To use a consistent encoding
11+
from codecs import open
12+
from os import path
13+
14+
here = path.abspath(path.dirname(__file__))
15+
16+
# Get the long description from the README file
17+
with open(path.join(here, 'README.md'), encoding='utf-8') as f:
18+
long_description = f.read()
19+
20+
# Arguments marked as "Required" below must be included for upload to PyPI.
21+
# Fields marked as "Optional" may be commented out.
22+
23+
setup(
24+
# This is the name of your project. The first time you publish this
25+
# package, this name will be registered for you. It will determine how
26+
# users can install this project, e.g.:
27+
#
28+
# $ pip install sampleproject
29+
#
30+
# And where it will live on PyPI: https://pypi.org/project/sampleproject/
31+
#
32+
# There are some restrictions on what makes a valid project name
33+
# specification here:
34+
# https://packaging.python.org/specifications/core-metadata/#name
35+
name='proxypy', # Required
36+
37+
# Versions should comply with PEP 440:
38+
# https://www.python.org/dev/peps/pep-0440/
39+
#
40+
# For a discussion on single-sourcing the version across setup.py and the
41+
# project code, see
42+
# https://packaging.python.org/en/latest/single_source_version.html
43+
version='2.0', # Required
44+
45+
# This is a one-line description or tagline of what your project does. This
46+
# corresponds to the "Summary" metadata field:
47+
# https://packaging.python.org/specifications/core-metadata/#summary
48+
description='Proxy collector', # Required
49+
50+
# This is an optional longer description of your project that represents
51+
# the body of text which users will see when they visit PyPI.
52+
#
53+
# Often, this is the same as your README, so you can just read it in from
54+
# that file directly (as we have already done above)
55+
#
56+
# This field corresponds to the "Description" metadata field:
57+
# https://packaging.python.org/specifications/core-metadata/#description-optional
58+
long_description=long_description, # Optional
59+
60+
# Denotes that our long_description is in Markdown; valid values are
61+
# text/plain, text/x-rst, and text/markdown
62+
#
63+
# Optional if long_description is written in reStructuredText (rst) but
64+
# required for plain-text or Markdown; if unspecified, "applications should
65+
# attempt to render [the long_description] as text/x-rst; charset=UTF-8 and
66+
# fall back to text/plain if it is not valid rst" (see link below)
67+
#
68+
# This field corresponds to the "Description-Content-Type" metadata field:
69+
# https://packaging.python.org/specifications/core-metadata/#description-content-type-optional
70+
long_description_content_type='text/markdown', # Optional (see note above)
71+
72+
# This should be a valid link to your project's main homepage.
73+
#
74+
# This field corresponds to the "Home-Page" metadata field:
75+
# https://packaging.python.org/specifications/core-metadata/#home-page-optional
76+
url='https://github.com/DevAlone/proxy_py', # Optional
77+
78+
# This should be your name or the name of the organization which owns the
79+
# project.
80+
author='DevAlone', # Optional
81+
82+
# This should be a valid email address corresponding to the author listed
83+
# above.
84+
author_email='[email protected]', # Optional
85+
86+
# Classifiers help users find your project by categorizing it.
87+
#
88+
# For a list of valid classifiers, see
89+
# https://pypi.python.org/pypi?%3Aaction=list_classifiers
90+
classifiers=[ # Optional
91+
# How mature is this project? Common values are
92+
# 3 - Alpha
93+
# 4 - Beta
94+
# 5 - Production/Stable
95+
'Development Status :: 5 - Production/Stable',
96+
97+
# Indicate who your project is intended for
98+
'Intended Audience :: Developers',
99+
'Topic :: Internet',
100+
101+
# Pick your license as you wish
102+
'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
103+
104+
# Specify the Python versions you support here. In particular, ensure
105+
# that you indicate whether you support Python 2, Python 3 or both.
106+
'Programming Language :: Python :: 3',
107+
'Programming Language :: Python :: 3.5',
108+
'Programming Language :: Python :: 3.6',
109+
],
110+
111+
# This field adds keywords for your project which will appear on the
112+
# project page. What does your project relate to?
113+
#
114+
# Note that this is a string of words separated by whitespace, not a list.
115+
keywords='proxy proxies proxy_collector aiohttp peewee_async', # Optional
116+
117+
# You can just specify package directories manually here if your project is
118+
# simple. Or you can use find_packages().
119+
#
120+
# Alternatively, if you just want to distribute a single Python file, use
121+
# the `py_modules` argument instead as follows, which will expect a file
122+
# called `my_module.py` to exist:
123+
#
124+
# py_modules=["my_module"],
125+
#
126+
packages=find_packages(exclude=['contrib', 'docs', 'tests']), # Required
127+
128+
# This field lists other packages that your project depends on to run.
129+
# Any package you put here will be installed by pip when your project is
130+
# installed, so they must be valid existing projects.
131+
#
132+
# For an analysis of "install_requires" vs pip's requirements files see:
133+
# https://packaging.python.org/en/latest/requirements.html
134+
install_requires=[
135+
'yarl',
136+
'aiohttp',
137+
'aiosocks',
138+
'lxml',
139+
'PySocks',
140+
'fake-useragent',
141+
'aiohttp_jinja2',
142+
'jinja2',
143+
'peewee-async',
144+
'aiopg',
145+
], # Optional
146+
147+
# List additional groups of dependencies here (e.g. development
148+
# dependencies). Users will be able to install these using the "extras"
149+
# syntax, for example:
150+
#
151+
# $ pip install sampleproject[dev]
152+
#
153+
# Similar to `install_requires` above, these must be valid existing
154+
# projects.
155+
extras_require={ # Optional
156+
'dev': ['check-manifest'],
157+
'test': ['coverage'],
158+
},
159+
160+
# If there are data files included in your packages that need to be
161+
# installed, specify them here.
162+
#
163+
# If using Python 2.6 or earlier, then these have to be included in
164+
# MANIFEST.in as well.
165+
package_data={ # Optional
166+
# 'sample': ['package_data.dat'],
167+
},
168+
169+
# Although 'package_data' is the preferred approach, in some case you may
170+
# need to place data files outside of your packages. See:
171+
# http://docs.python.org/3.4/distutils/setupscript.html#installing-additional-files
172+
#
173+
# In this case, 'data_file' will be installed into '<sys.prefix>/my_data'
174+
# data_files=[('my_data', ['data/data_file'])], # Optional
175+
176+
# To provide executable scripts, use entry points in preference to the
177+
# "scripts" keyword. Entry points provide cross-platform support and allow
178+
# `pip` to create the appropriate form of executable for the target
179+
# platform.
180+
#
181+
# For example, the following would provide a command called `sample` which
182+
# executes the function `main` from this package when invoked:
183+
entry_points={ # Optional
184+
'console_scripts': [
185+
# 'proxy_py=proxy_py:main',
186+
],
187+
},
188+
189+
# List additional URLs that are relevant to your project as a dict.
190+
#
191+
# This field corresponds to the "Project-URL" metadata fields:
192+
# https://packaging.python.org/specifications/core-metadata/#project-url-multiple-use
193+
#
194+
# Examples listed include a pattern for specifying where the package tracks
195+
# issues, where the source is hosted, where to say thanks to the package
196+
# maintainers, and where to support the project financially. The key is
197+
# what's used to render the link text on PyPI.
198+
project_urls={ # Optional
199+
'Bug Reports': 'https://github.com/DevAlone/proxy_py/issues',
200+
# 'Funding': 'https://donate.pypi.org',
201+
# 'Say Thanks!': 'http://saythanks.io/to/example',
202+
'Source': 'https://github.com/DevAlone/proxy_py',
203+
},
204+
)
205+

0 commit comments

Comments
 (0)