Я пытаюсь найти Freebase для имени химического элемента и вернуть его атомную массу, и я пытаюсь получить это для работы с запросом и mql_output.Видимо пустой результат из Freebase mql_output search
Вот мой код:
service_url = 'https://www.googleapis.com/freebase/v1/search'
params = {
'query': 'Helium',
'key': freebase_key,
'mql_output': '{"name":[],"/chemistry/chemical_element/atomic_mass":[]}',
'limit': '5'
}
url = service_url + '?' + urllib.urlencode(params)
response = json.loads(urllib.urlopen(url).read())
for result in response['result']:
logging.info('Result: {}'.format(result))
Это выход я получаю в журналах:
Result: {u'relevance:score': 107.16467299999999, u'name': [u'Helium'], u'/chemistry/chemical_element/atomic_mass': [None]}
Result: {u'relevance:score': 39.270966000000001, u'name': [u'Helium-3'], u'/chemistry/chemical_element/atomic_mass': []}
Result: {u'relevance:score': 38.038089999999997, u'name': [u'Liquid helium'], u'/chemistry/chemical_element/atomic_mass': []}
Result: {u'relevance:score': 32.367195000000002, u'name': [u'Isotopes of helium'], u'/chemistry/chemical_element/atomic_mass': []}
Result: {u'relevance:score': 28.453569000000002, u'name': [u'Star'], u'/chemistry/chemical_element/atomic_mass': []}
Тот, что я ищу, только «Гелий», который имеет .. ./atomic_mass, связанная с ним, должна дать мне атомную массу, не так ли?
Вместо этого он просто говорит «Нет», в то время как если вы посмотрите на Freebase, он определенно имеет свойство атомной массы, связанное с ним. Другой «Гелий» просто возвращает пустые квадратные скобки, хотя, по крайней мере, похоже, что у гелия, который я ищу, есть что-то; Я просто не понимаю.
Любая идея, что здесь происходит?
Большое спасибо.