About
Stack.PY is based heavily on Stack.PHP and Stack.JS, taking the chained-method concept and applying it to Python. The end result is an extremely easy to use module, named stackpy
:
from stackpy import API, Site
# Print the names of all Stack Exchange sites
for site in API.sites:
print site['name']
# Grab the first question on Stack Overflow
print Site('stackoverflow').questions[0].title
Here are some of the other features you can expect from Stack.PY:
- Caching: currently Stack.PY ships with an SQLite database backend (used for caching currently). By default, if no cache is set, Stack.PY creates an in-memory SQLite database to cache requests for the current session.
- Full documentation: using a single command (see the
README
file) you can generate all of the documentation for the entire module - including an explanation for each parameter of every method.
Many more features are planned:
- A test suite.
- A series of examples (currently there is one really primitive example).
- Full support for rate-limiting and the
backoff
response.
Stack.PY should run perfectly fine in Python 3k using 2to3
.
License
Stack.PY is released under the MIT License.
Contact
I can be reached at [email protected]
.
Code
The code for Stack.PY is hosted here on Launchpad. You can check out the latest code using:
bzr init
bzr pull lp:stackpy
You can view the code online here.
Stack.PY uses distutils
so you can install the module by running:
python setup.py install
...or... if you are using Ubuntu, you can add my PPA and install the appropriate package:
sudo apt-get install python-stackpy
(for Python 2k)
sudo apt-get install python3-stackpy
(for Python 3k)