Wolfram Alpha API
This is a Wolfram|Alpha API wrapper for Node.js.
All the query parameters are fully customizable as per the API reference, and the normal
'plaintext,image,sound,mathml' formats are all parsed properly.
Register for a Wolfram|Alpha application ID. The Wolfram|Alpha® API is available for free for non-commercial experimental use with a low monthly cap on queries. For more information, visit http://products.wolframalpha.com/developers/. Wolfram is a registered trademark of the Wolfram Group of Companies.
Install the module with npm, and (possibly) install the libxml dependency in your OS first:
$ sudo apt-get install libxml2-dev$ npm install wolfram-alpha
var wolfram = require'wolfram-alpha'createClient"APIKEY-HERE" opts;wolframquery"integrate 2x"if err throw err;console.log"Result: %j" result;;
The results calls back with a result array of pods (each pod is typically one of the result blocks on the web interface). An empty results array corresponds to results found.
When results exist, each pod will have the following format:
results0;title: "some title"subpods:text: "text found in the <plaintext> element"image: "link found in the <img src=> attribute"mathml: "mathml string found in the <mathml> element"// maybe more subpods (but often not)primary: Boolean"was the primary attribute set on the pod?"sounds:"link found in the first <sound url=> attribute"// maybe more sounds
Sounds and mathml will only exist when you request them in the createClient opts.format string, and they are not guaranteed to exist. Text and images can be removed from the opts.format string as well which will likely mean you get much fewer pods.
results seems to always be the "Input Interpretation", while
results is the most relevant answers (but it will not always have
results.primary === true despite this).
Set the API key as an environment variable, then run the library's test command:
$ export WOLFRAM_APPID=APIKEY-HERE$ npm test
MIT-Licensed. See LICENSE file for details.