标签: wikidata

维基数据 SPARQL 查询限定符值

对于熟悉 SPARQL 的人(我不是)来说,这应该相当容易。我试图在此查询中返回“score_by”的限定符/属性值,但它显示为空白:

SELECT ?item ?itemLabel ?IMDb_ID ?_review_score ?_score_by WHERE {
    ?item wdt:P345 "tt3315342".
    SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
    OPTIONAL { ?item wdt:P345 ?IMDb_ID. }
    OPTIONAL { ?item wdt:P444 ?_review_score. }
    OPTIONAL { ?item ps:P447 ?_score_by. }
}
Run Code Online (Sandbox Code Playgroud)

这是此查询的链接

sparql wikidata

2
推荐指数
1
解决办法
546
查看次数

如何使用 SPARQL 查询从 wiki 数据条目中获取“描述”?

如何提取给定项目标签的描述?例如,对于 Barack Obama (Q76)链接,有一个列出的描述:“美国第 44 任总统”。我该如何检索这个?我可以使用以下方法提取“标签”:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX wd: <http://www.wikidata.org/entity/> 
#Cats
SELECT ?label
WHERE 
{
  wd:Q76 rdfs:label ?label .
  FILTER (langMatches( lang(?label), "EN" ) )
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
Run Code Online (Sandbox Code Playgroud)

(虽然这给了我 3 次相同的结果......)我如何获得描述?

sparql wikidata

2
推荐指数
1
解决办法
1466
查看次数

获取维基数据项目浏览次数/受欢迎程度指数

这是我的 SPARQL 查询,用于列出数学家及其维基百科链接和图像:

SELECT DISTINCT ?pers ?persLabel ?nameLabel ?persDescription ?link ?img
WHERE {
  ?pers wdt:P31 wd:Q5.
  {?pers wdt:P101* wd:Q395} union {?pers wdt:P106* wd:Q170790}.
  ?pers wdt:P734 ?name.
  optional {?link schema:about ?pers; schema:isPartOf <https://en.wikipedia.org/>. }
  optional {?pers wdt:P18 ?img. }
  
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
limit 100
Run Code Online (Sandbox Code Playgroud)

现在我接下来想要的是使用某种流行度索引按最著名/流行的条目过滤列表。在 Wikimedia Action API 查询中,我将使用页面查看计数属性来获取一段时间内(例如 60 天)的平均查看次数,从而估算出文章的用户受欢迎程度,例如

https://www.mediawiki.org/w/api.php?action=query&generator=allpages&gaplimit=max&gapfilterredir=nonredirects&gapfrom=a&prop=pageviews

但我不知道维基数据是否也存在这样的指标,或者是否有任何其他索引可用于此目的。

metadata sparql wikimedia wikidata wikidata-api

2
推荐指数
1
解决办法
857
查看次数

从WikiData ID获取维基百科页面的URL

我正在尝试使用API​​从维基数据ID获取不同的维基百科URL(即en.wikipedia.org/wiki/Page_Name).

例如,给定URL http://www.wikidata.org/wiki/Q7349我希望获得所有语言的维基百科文章的链接(en.wikipedia.org/wiki/Joseph_Haydn,es.wikipedia.org/wiki/Joseph_Haydn等).ATM我正在使用https://github.com/freearhey/wikidata:

$wdAPI = new \Wikidata\Wikidata();
$resp = $wdAPI->entities('Q7349');
Run Code Online (Sandbox Code Playgroud)

但后来我不知道如何从实体()给出的对象中获取WP URL.我想这应该是一个简单的任务,但几个小时后我仍然无法弄清楚如何做到这一点,如果有以前使用WP API经验的人能指出我正确的方向,我将非常感激:)

php wikipedia-api wikidata

1
推荐指数
1
解决办法
1011
查看次数

或者在sparql查询中

这个关于wikidata的sparql查询显示德国(Q183)的所有地方,其名称以-ow或-itz结尾.

我想扩展它以寻找德国和奥地利的地方.

我尝试将第8行修改为:

wdt:P17 (wd:Q183 || wd:Q40);
Run Code Online (Sandbox Code Playgroud)

为了寻找奥地利的地方(Q40),但这不是一个有效的查询.

有什么方法可以将查询扩展到包含其他国家/地区?

sparql wikidata

1
推荐指数
1
解决办法
753
查看次数

SPARQL - 从远程端点插入数据

如何查询远程端点(如DBPediaWikidata的端点)并在本地图形中插入生成的三元组?到目前为止,我知道有INSERT,ADD,COPY等命令可用于此类任务.我不明白的是如何在更新本地图表时寻址远程端点.有人可以提供最低限度的例子或主要步骤吗?
我在Windows上使用Apache Jena Fuseki v2,这是我目前的查询:

PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX wd: <http://www.wikidata.org/entity/>

INSERT 
  { GRAPH <???> { ?s ?p ?o } } #don't know what to insert here for "GRAPH"
WHERE
  { GRAPH  <???> #don't know what to insert here for "GRAPH" either
    {                           #a working example query for wikidata:
      ?s wdt:P31 wd:Q5.         #humans
      ?s wdt:P54 wd:Q43310.     #germans
      ?s wdt:P1344 wd:Q79859.   #part of world cup 2014
      ?s ?p ?o.
    }
  }
Run Code Online (Sandbox Code Playgroud)

我正在查询的本地端点是 …

sparql jena fuseki wikidata federated-queries

1
推荐指数
1
解决办法
519
查看次数

Wikidata:SPARQL如何按项目搜索?

我正在使用Wikidata查询服务(https://query.wikidata.org)获得有关电影和电视节目的详细信息。

我知道我可以查询属于电影实例的所有项目的类型(在下面查询),但是我只想查找特定的电影。

SELECT ?item ?itemLabel ?genreLabel
WHERE
{
    ?item wdt:P31 wd:Q11424 .
    OPTIONAL {
        ?item wdt:P136 ?genre
    }
    SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" }
} LIMIT 10
Run Code Online (Sandbox Code Playgroud)

我有电影的Wikidata项目编号(Q ###)的列表,电视节目我想获取其属性。我需要查询这些特定的电影或电视节目。例如,如果我知道Wikidata中的《星球大战第四集:新希望》是Q17738,那么如何查询其特定属性?

sparql wikidata wikidata-api

1
推荐指数
1
解决办法
659
查看次数

如何使用Wikidata API查找城市实体?

我尝试根据其名称的一部分找到一个城市(通常是https://en.wikipedia.org/wiki/Lavo%C3%BBte-sur-Loire,一个法国城市)

我找到的唯一方法是首先通过以下请求请求"Lavoute"(没有重音).

https://fr.wikipedia.org/w/api.php?action=opensearch&generator=links&format=xml&search=lavoute&prop=pageprops&gpllimit=50&ppprop=wikibase_item&format=json

它返回5个链接,然后使用此信息通过所有结果请求通过具有良好价值的具有类似结果的所有结果(具有属性P281意味着它是一个城市)

https://www.wikidata.org/w/api.php?action=wbgetentities&titles=Lavo%C3%BBte-sur-Loire&sites=enwiki|frwiki&format=json

有更简单的方法吗?

wikidata wikidata-api

1
推荐指数
1
解决办法
320
查看次数

如何使用 SPARQLWrapper 处理 Wikidata 上的“过多请求”?

我正在遍历users大约 1000 个条目的列表,如下所示:

def wikidata_user_lookup(id_str):
    q = f'''
        SELECT ?item ?itemLabel ?kind ?kindLabel
        WHERE 
        {{
            ?item p:P2002 ?twitter .
            ?item wdt:P31 ?kind .
            ?twitter pq:P6552 "{id_str}" .
            SERVICE wikibase:label {{ bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }}
        }}
    '''
    sparql.setQuery(q)
    sparql.setReturnFormat(JSON)
    results = sparql.query().convert()
    results_df = pd.io.json.json_normalize(results['results']['bindings'])
    return results_df

for user in users:
    res = wikidata_user_lookup(user)
Run Code Online (Sandbox Code Playgroud)

所以我提交了大约 1000 个查询,一个接一个。据我所知,我没有并行运行多个查询,所以不应该允许这样做吗?我得到HTTPError: HTTP Error 429: Too Many Requests. 处理这种情况的正确方法是什么?

python sparql wikidata sparqlwrapper

1
推荐指数
1
解决办法
521
查看次数

维基数据按人口对给定州的城市进行排序

我正在寻找使用维基数据按人口重新创建德克萨斯州城市列表

我看到我可以用这个查询按人口做状态:

SELECT DISTINCT ?state ?stateLabel ?population
{
  ?state wdt:P31 wd:Q35657 ;
           wdt:P1082 ?population .
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
GROUP BY ?state ?population ?stateLabel
ORDER BY DESC(?population)
Run Code Online (Sandbox Code Playgroud)

德克萨斯州的 id 是 wd:Q1439

所以我尝试了以下方法

SELECT ?country ?countryLabel ?state ?stateLabel ?city ?cityLabel ?population
WHERE
    {
#    ?state wdt:P31 wd:Q35657 .    # Give me an american state
    ?state wdt:P31 wd:Q1439 .      # that state is is Texas
    ?city wdt:P31 wd:Q515 .        # it is …
Run Code Online (Sandbox Code Playgroud)

sparql wikidata

1
推荐指数
1
解决办法
42
查看次数