commit: 736f0fff0eeaded50d02f2f989fc3a4c638b3d3c
parent: 686a9428d4962f52ff51d0042a7dab1f754f6639
Author: Adam Tauber <asciimoo@gmail.com>
Date: Mon, 9 Jul 2018 10:59:03 +0200
Merge pull request #1342 from bourrel/fix_wikidata_image
Update path to wikidata image
Diffstat:
2 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/searx/engines/wikidata.py b/searx/engines/wikidata.py
@@ -54,6 +54,7 @@ value_xpath = './/div[contains(@class,"wikibase-statementview-mainsnak")]'\
+ '/*/div[contains(@class,"wikibase-snakview-value")]'
language_fallback_xpath = '//sup[contains(@class,"wb-language-fallback-indicator")]'
calendar_name_xpath = './/sup[contains(@class,"wb-calendar-name")]'
+media_xpath = value_xpath + '//div[contains(@class,"commons-media-caption")]//a'
def request(query, params):
@@ -313,7 +314,7 @@ def add_image(result):
for property_id in property_ids:
image = result.xpath(property_xpath.replace('{propertyid}', property_id))
if image:
- image_name = image[0].xpath(value_xpath)
+ image_name = image[0].xpath(media_xpath)
image_src = url_image.replace('{filename}', extract_text(image_name[0]))
return image_src
diff --git a/tests/unit/engines/test_wikidata.py b/tests/unit/engines/test_wikidata.py
@@ -123,9 +123,10 @@ class TestWikidataEngine(SearxTestCase):
<div class="wikibase-statementview-mainsnak">
<div>
<div class="wikibase-snakview-value">
- <a href="https://commons.wikimedia.org/wiki/File:image.png">
- image.png
- </a>
+ <div class="commons-media-caption">
+ <a href="https://commons.wikimedia.org/wiki/File:image.png">image.png</a>
+ <br/>2,687 × 3,356; 1.22 MB
+ </div>
</div>
</div>
</div>
@@ -156,9 +157,10 @@ class TestWikidataEngine(SearxTestCase):
<div class="wikibase-statementview-mainsnak">
<div>
<div class="wikibase-snakview-value">
- <a href="https://commons.wikimedia.org/wiki/File:icon.png">
- icon.png
- </a>
+ <div class="commons-media-caption">
+ <a href="https://commons.wikimedia.org/wiki/File:icon.png">icon.png</a>
+ <br/>671 × 671; 18 KB</div>
+ </div>
</div>
</div>
</div>
@@ -179,9 +181,10 @@ class TestWikidataEngine(SearxTestCase):
<div class="wikibase-statementview-mainsnak">
<div>
<div class="wikibase-snakview-value">
- <a href="https://commons.wikimedia.org/wiki/File:logo.png">
- logo.png
- </a>
+ <div class="commons-media-caption">
+ <a href="https://commons.wikimedia.org/wiki/File:logo.png">logo.png</a>
+ <br/>170 × 170; 1 KB
+ </div>
</div>
</div>
</div>