浏览代码

[enh] wikidata engine : add links to musicbrainz

dalf 10 年前
父节点
当前提交
63a0328c8b
共有 1 个文件被更改,包括 22 次插入1 次删除
  1. 22
    1
      searx/engines/wikidata.py

+ 22
- 1
searx/engines/wikidata.py 查看文件

69
         add_url(urls, 'Wikiquote (' + language + ')', get_wikilink(result, language + 'wikiquote'))
69
         add_url(urls, 'Wikiquote (' + language + ')', get_wikilink(result, language + 'wikiquote'))
70
     add_url(urls, 'Wikiquote (en)', get_wikilink(result, 'enwikiquote'))
70
     add_url(urls, 'Wikiquote (en)', get_wikilink(result, 'enwikiquote'))
71
 
71
 
72
-
73
     add_url(urls, 'Commons wiki', get_wikilink(result, 'commonswiki'))
72
     add_url(urls, 'Commons wiki', get_wikilink(result, 'commonswiki'))
74
 
73
 
75
     add_url(urls, 'Location', get_geolink(claims, 'P625', None))
74
     add_url(urls, 'Location', get_geolink(claims, 'P625', None))
76
 
75
 
77
     add_url(urls, 'Wikidata', 'https://www.wikidata.org/wiki/' + wikidata_id + '?uselang='+ language)
76
     add_url(urls, 'Wikidata', 'https://www.wikidata.org/wiki/' + wikidata_id + '?uselang='+ language)
78
 
77
 
78
+    musicbrainz_work_id = get_string(claims, 'P435')
79
+    if musicbrainz_work_id != None:
80
+        add_url(urls, 'MusicBrainz', 'http://musicbrainz.org/work/' + musicbrainz_work_id)
81
+
82
+    musicbrainz_artist_id = get_string(claims, 'P434')
83
+    if musicbrainz_artist_id != None:
84
+        add_url(urls, 'MusicBrainz', 'http://musicbrainz.org/artist/' + musicbrainz_artist_id)
85
+
86
+    musicbrainz_release_group_id = get_string(claims, 'P436')
87
+    if musicbrainz_release_group_id != None:
88
+        add_url(urls, 'MusicBrainz', 'http://musicbrainz.org/release-group/' + musicbrainz_release_group_id)
89
+    
90
+    musicbrainz_label_id = get_string(claims, 'P966')
91
+    if musicbrainz_label_id != None:
92
+        add_url(urls, 'MusicBrainz', 'http://musicbrainz.org/label/' + musicbrainz_label_id)
93
+
94
+    # musicbrainz_area_id = get_string(claims, 'P982')
95
+    # P1407 MusicBrainz series ID
96
+    # P1004 MusicBrainz place ID
97
+    # P1330 MusicBrainz instrument ID
98
+    # P1407 MusicBrainz series ID
99
+
79
     postal_code = get_string(claims, 'P281', None)
100
     postal_code = get_string(claims, 'P281', None)
80
     if postal_code != None:
101
     if postal_code != None:
81
         attributes.append({'label' : 'Postal code(s)', 'value' : postal_code})
102
         attributes.append({'label' : 'Postal code(s)', 'value' : postal_code})