Найти информацию для многих людей в Викиданных - PullRequest
0 голосов
/ 28 мая 2019

У меня есть список имен (сотни из них), которые уже преобразованы в Q-числа в викиданных с использованием python.Для каждого Q-номера (человека) я хочу получить некоторую основную информацию, такую ​​как place_of_birth, национальность и т. Д.

SELECT DISTINCT ?name ?nameLabel ?genderLabel ?placeofbirth ?nationality (year(?birthdate) as ?birthyear) (year(?deathdate) as ?deathyear)
WHERE
{
  ?name wdt:P106/wdt:P279* wd:Q1028181  # painter
  FILTER (?name IN (wd:Q2674488)) # James Seymour 
  OPTIONAL { ?name wdt:P569 ?birthdate. }        
  OPTIONAL { ?name wdt:P27 ?nationality. }
  OPTIONAL { ?name wdt:P21 ?gender. }
  OPTIONAL { ?name wdt:P19 ?placeofbirth. }
  OPTIONAL { ?name wdt:P570 ?deathyear. }
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}

Используя SPARQL, я могу искать двух или трех человек одновременно, добавляя Q-номерав «ФИЛЬТР», но как я могу перебрать все Q-числа в списке Python?Большое спасибо!

...