Go to file
2016-09-03 15:32:30 -04:00
docs Merge with latest skeleton 2016-04-29 10:06:30 -04:00
wolframalpha Simplify init in Result 2016-09-03 15:32:30 -04:00
.gitignore Add gitignore. Make .hgignore empty - there's nothing here that's project specific. 2016-01-01 08:30:19 -05:00
.travis.yml Add password for deployment 2016-04-29 10:12:34 -04:00
CHANGES.rst Return iterables throughout for consistency. 2016-09-03 14:59:58 -04:00
conftest.py Bypass tests on Python 2.7 when pmxbot is involved. 2015-12-11 12:35:36 -05:00
pytest.ini Update project skeleton 2015-11-24 20:10:37 -05:00
README.rst Add notes in README about attributes exposed. 2016-09-03 15:03:02 -04:00
setup.cfg Learning from lessons in the keyring 8.4 release (https://github.com/jaraco/keyring/issues/210), always clean the build artifacts before cutting a release. 2016-02-15 04:59:44 -05:00
setup.py Re-use always_iterable 2016-09-03 15:23:08 -04:00

wolframalpha
============

Python Client built against the `Wolfram|Alpha <http://wolframalpha.com>`_
v2.0 API. This project is hosted on `Github
<https://github.com/jaraco/wolframalpha>`_.

Usage
=====

Basic usage is pretty simple. Create the client with your App ID (request from
Wolfram Alpha)::

    import wolframalpha
    client = wolframalpha.Client(app_id)

Then, you can send queries, which return Result objects::

    res = client.query('temperature in Washington, DC on October 3, 2012')

Result objects have `pods` (a Pod is an answer group from Wolfram Alpha)::

    for pod in res.pods:
        do_something_with(pod)

Pod objects have ``subpods`` (a Subpod is a specific response with the plaintext
reply and some additional info)::

    for pod in res.pods:
        for sub in pod.subpods:
            print(sub.text)

You may also query for simply the pods which have 'Result' titles or are
marked as 'primary' using ``Result.results``::

    print(next(res.results).text)

All objects returned are dictionary subclasses, so to find out which attributes
Wolfram|Alpha has supplied, simply invoke ``.keys()`` on the object.
Attributes formed from XML attributes can be accessed with or without their
"@" prefix (added by xmltodict).

For more information, read the source.