iHackerNews
A python library for the iHackerNews API.
- Author: Derek Payton
- Version: 1.0.0
- License: MIT
Dependencies
- Requests is used to make the HTTP request.
- A JSON library of some sort (json, simplejson, or django.utils.simplejson)
Installation
iHackerNews can be installed in any number of the usual ways:
easy_install ihackernews
pip install ihackernews
pip install -e git+git://github.com/dmpayton/python-ihackernews.git#egg=python-ihackernews
git clone git://github.com/dmpayton/python-ihackernews.git
cd python-ihackernews
python setup.py install
Usage
Basic example:
```
>>> from ihackernews import iHackerNewsAPI
>>> hn = iHackerNewsAPI()
>>> response = hn.profile('dmpayton')
>>> response
<iHackerNewsResponse: http://api.ihackernews.com/profile/dmpayton>
>>> response.response # The raw response from the requests library
<Response [200]>
>>> response.data # The parsed JSON data
{u'username': u'dmpayton', u'about': u"24 year old software developer (Python) in Southern California.<p>Me: <a href='http://dmpayton.com'>http://dmpayton.com</a>\nDay job: <a href='http://cukerinteractive.com'>http://cukerinteractive.com</a><p>derek.payton (at) Google's mail service.", u'createdAgo': u'1560 days ago', u'cachedOnUTC': u'/Date(1323325776265)/', u'version': u'1.0', u'karma': 578}
```
More examples can be found in tests.py.
Testing
python tests.py
Note: Potential instabilities in the iHackerNews API service may cause test failures. It's not entirely uncommon to receive 500's or empty data from the API, which sucks, but c'est la vie.
TODO
- Better documentation
- Automatically parse Dates to datetime.datetime objects
- Retry logic (?) -- See note under Testing