cfc475a361
Add timeout
2019-11-15 02:39:57 +00:00
Jason R. Coombs
923b505128
Feed the hobgoblins (delint).
2018-03-04 22:05:10 -05:00
Jason R. Coombs
c66dc29876
Add tests for pmxbot command (and Result.results).
2016-09-04 11:41:18 -04:00
Jason R. Coombs
2c2ba47879
Add test for xml_bool and correct implementation, simplify by using json.
2016-09-04 11:23:22 -04:00
Jason R. Coombs
7bee559740
Rely on inheritance to handle errors in Result and Pod.
2016-09-03 15:36:52 -04:00
Jason R. Coombs
f0fc35c7c1
Simplify init in Result
2016-09-03 15:32:30 -04:00
Jason R. Coombs
5f86e5a1d6
Re-use always_iterable
2016-09-03 15:23:08 -04:00
Jason R. Coombs
e1ae854faf
Return iterables throughout for consistency.
2016-09-03 14:59:58 -04:00
Jason R. Coombs
1a4dc2fc62
Re-use more of the from_doc constructor and attribute type transformation in the Result object. Restore Pod.subpods through an alias property.
2016-09-03 14:56:06 -04:00
Jason R. Coombs
273cd73330
Move result after Pod
2016-09-03 14:40:07 -04:00
Jason R. Coombs
d4e3afe6b0
Use compose to generate the lists where expected
2016-09-03 14:38:10 -04:00
Jason R. Coombs
658183b56c
Move from_doc to the Document class
2016-09-03 14:33:17 -04:00
Jason R. Coombs
5d697ade21
Fix test failure on Python 2
2016-09-03 14:31:29 -04:00
Jason R. Coombs
9be618cd8c
Now the various objects attributes are derived directly from the data with which they're initialized.
2016-09-03 14:21:06 -04:00
Jason R. Coombs
6abccdc728
Move Image (and Warning and Assumption) ahead of Subpod.
2016-09-03 14:13:10 -04:00
Jason R. Coombs
406967e8e1
Define subpod above pod
2016-09-03 13:54:36 -04:00
Jason R. Coombs
8ed3be43e1
models now derive from a dict (via Document), and store their content natively in self.
2016-09-03 13:43:13 -04:00
Jason R. Coombs
be0938dded
Add test ensuring that the type of position is float
2016-09-03 13:32:16 -04:00
Jason R. Coombs
288b13db0f
Rename node and tree to hidden _doc attributes
2016-09-03 12:57:40 -04:00
Jason R. Coombs
d4e09bb905
Convert on-object lists into properties. Add tests for these properties.
2016-09-03 12:49:33 -04:00
Jason R. Coombs
9115d23d83
Restore expectation that results can be an iterator.
2016-09-03 12:33:58 -04:00
Jason R. Coombs
7ab8e44695
Always use map from the future
2016-09-03 12:29:53 -04:00
Jason R. Coombs
946b5d1f4b
Extend test to capture exactly one result with exactly one text.
2016-09-03 12:26:17 -04:00
Jason R. Coombs
14ba338b1e
Restore prior expectation about Pod.text
2016-09-03 12:24:46 -04:00
Jason R. Coombs
b69b312692
urlencode requires a tuple and not an iterable.
2016-09-03 12:06:12 -04:00
Jason R. Coombs
029a0c4288
Remove key from the code. Each client must acquire their own key.
2016-09-03 12:01:16 -04:00
Jason R. Coombs
412a04b16b
Rely on presence of 'error' element to detect errors.
2016-09-03 11:50:15 -04:00
Jason R. Coombs
35cc9e035d
Combine error handling
2016-09-03 11:49:01 -04:00
Jason R. Coombs
760a6a6a92
Normalize docstrings per PEP 257.
2016-09-03 11:20:52 -04:00
Jason R. Coombs
bee228a1d5
Provide an interface to supply multiple parameters (even with the same name) to the query. Renamed 'query' to 'input' for clarity and to align with the API.
2016-09-03 11:18:40 -04:00
Jason R. Coombs
788746c595
Allow other query parameters to be passed
2016-09-03 11:08:41 -04:00
Jason R. Coombs
e98b5d74ca
Trim whitespace
2016-09-03 11:05:48 -04:00
Isaac Smith
7d3453ec9a
Grouped Pod and Subpod classes.
2016-05-14 20:19:16 -04:00
Isaac Smith
570998719b
Fix unseen error.
...
Result of one of the previous changes. Almost didn't notice it.
2016-05-14 20:08:00 -04:00
Isaac Smith
1d8d2451bb
Fix unseen error.
...
Praised be rubber ducky.
2016-05-14 20:00:16 -04:00
Isaac Smith
d3046c7ede
Make tests reflect changes
2016-05-14 19:24:48 -04:00
Isaac Smith
a784c88fa1
Simplify naming convetion
...
Aligns more with the original implementation.
2016-05-14 19:23:50 -04:00
Isaac Smith
9331558340
Align with original methods
...
Rewrote the results method a bit so it returned something similar to the original result, which will make the transition easier.
2016-05-14 19:13:58 -04:00
Zenohm
bb3ee3cdc3
Documentation
2016-05-14 17:49:26 -04:00
Zenohm
f653d1e3a9
Consistency matters.
...
Redesign how information is stored and accessed. This way code can be written once. A developer using this API should not have to build contingencies just because Wolfram Alpha changes its output. The API should handle that.
These changes move the parsing of the tree out of the Wolfram API's returned XML and into Python dictionaries. This allows the full suite of tools that work with Python dictionaries to be used as well as simplifying and unifying how the responses should be handled.
In addition, I have added consistencies in certain areas that allow information to be accessed in one, unified way; regardless of how it would otherwise have been formatted by the library.
With this I want to encourage simplicity. You shouldn't have to look back through the code to figure out exactly what is being iterated over when someone decided to write iter(self) instead of simply iter(self.pods).
Also moved the Client class to the top of the file where it can be immediately seen.
2016-05-14 17:24:48 -04:00
dgw
55c362187b
Switch to HTTPS API URL
...
This alphabet soup closes #5 .
2016-04-29 07:00:55 -05:00
milek7
7c2f7ebb23
support for images
2016-01-23 13:09:26 +01:00
Jason R. Coombs
cff8e08013
Use simpler syntax now supported by pmxbot.
2016-01-18 17:02:58 -05:00
Jason R. Coombs
648a4b5aac
For tests, also disable the API key. This is the API key that was seeing high usage.
2016-01-18 16:21:00 -05:00
Jason R. Coombs
5fc802f6e7
Remove hard-coded API key from the library.
2016-01-18 16:07:31 -05:00
Jason R. Coombs
2338ab2e3e
Add absolute import for compatibility with Python 2.7 (even though late pmxbot only runs on Python 3).
2015-12-11 12:17:55 -05:00
Jason R. Coombs
acdfbd6593
Add pmxbot command
2015-12-10 18:34:25 -05:00
Jason R. Coombs
f72ac2074d
Use six for urllib compatibility
2014-06-08 11:02:14 +01:00
Jason R. Coombs
db8b34e618
Flat better than nested
2014-06-08 11:00:14 +01:00
Jason R. Coombs
4831ebb427
Extract method
2014-06-08 10:59:50 +01:00