]> jfr.im git - irc/rizon/acid.git/blame - pyva/pyva/src/main/python/internets/api/wolfram.py
Split pyva plugin into pyva.core and pyva.pyva
[irc/rizon/acid.git] / pyva / pyva / src / main / python / internets / api / wolfram.py
CommitLineData
685e346e
A
1from feed import XmlFeed
2from urllib import urlencode
3
4class Wolfram(object):
5 API_URL = 'http://api.wolframalpha.com/v2/query?'
6
7 def __init__(self, key):
8 self.API_KEY = key
9
10 def alpha(self, query):
11 u = self.API_URL + urlencode({
12 'input': query,
13 'appid': self.API_KEY,
14 'format': 'plaintext',
15 })
16 data = XmlFeed(u)
17 if data.attribute('/queryresult', 'success') != 'true':
18 return None
19
20 try:
21 q = data.text('/queryresult/pod[1]/subpod/plaintext')
22 r = data.text('/queryresult/pod[2]/subpod/plaintext')
23 assert q
24 return (q, r, )
25 except:
26 return None