Мне было интересно, какой самый простой способ получить данные из викиданных с помощью поиска по ярлыкам, например:
API_ENDPOINT = "https://www.wikidata.org/w/api.php"
query = "cobalt-70"
params = {
'action': 'wbsearchentities',
'format': 'json',
'language': 'en',
'type':'item',
'search': query
}
r = requests.get(API_ENDPOINT, params = params)
Output:
{'searchinfo': {'search': 'cobalt-70'}, 'search': [{'id': 'Q18844865', 'title': 'Q18844865', 'pageid': 20388165, 'repository': 'local', 'url': '//www.wikidata.org/wiki/Q18844865', 'concepturi': 'http://www.wikidata.org/entity/Q18844865', 'label': 'cobalt-70', 'description': 'isotope of cobalt', 'match': {'type': 'label', 'language': 'en', 'text': 'cobalt-70'}}, {'id': 'Q18880148', 'title': 'Q18880148', 'pageid': 20426734, 'repository': 'local', 'url': '//www.wikidata.org/wiki/Q18880148', 'concepturi': 'http://www.wikidata.org/entity/Q18880148', 'label': 'cobalt-70m', 'description': 'isotope of cobalt', 'match': {'type': 'label', 'language': 'en', 'text': 'cobalt-70m'}}], 'success': 1}
Итак, я хочу получать утверждения с тем же запросом URL-адреса, используя «заявки» в параметрах действий. Например:
"P2114": [
{
"mainsnak": {
"snaktype": "value",
"property": "P2114",
"hash": "6f767f24024d5e0045afcf4d49d1a1b4dbc88fe5",
"datavalue": {
"value": {
"amount": "+0.5",
"unit": "http://www.wikidata.org/entity/Q11574",
"upperBound": "+0.68",
"lowerBound": "+0.32"
},
"type": "quantity"
},
"datatype": "quantity"
},
....
Спасибо!