diff --git a/searx/engines/bing_images.py b/searx/engines/bing_images.py index 66e14c01..876011f1 100644 --- a/searx/engines/bing_images.py +++ b/searx/engines/bing_images.py @@ -88,9 +88,7 @@ def response(resp): url = json_data.get('purl') img_src = json_data.get('murl') - - thumb_json_data = loads(_quote_keys_regex.sub(r'\1"\2": \3', link.attrib.get('mad'))) - thumbnail = thumb_json_data.get('turl') + thumbnail = json_data.get('turl') # append result results.append({'template': 'images.html', diff --git a/searx/engines/startpage.py b/searx/engines/startpage.py index a52d9128..55efdc88 100644 --- a/searx/engines/startpage.py +++ b/searx/engines/startpage.py @@ -32,8 +32,9 @@ search_url = base_url + 'do/search' # specific xpath variables # ads xpath //div[@id="results"]/div[@id="sponsored"]//div[@class="result"] # not ads: div[@class="result"] are the direct childs of div[@id="results"] -results_xpath = '//div[@class="result"]' +results_xpath = '//li[contains(@class, "search-result") and contains(@class, "search-item")]' link_xpath = './/h3/a' +content_xpath = './p[@class="search-item__body"]' # do search-request @@ -75,8 +76,8 @@ def response(resp): title = extract_text(link) - if result.xpath('./p[@class="desc clk"]'): - content = extract_text(result.xpath('./p[@class="desc clk"]')) + if result.xpath(content_xpath): + content = extract_text(result.xpath(content_xpath)) else: content = '' diff --git a/tests/unit/engines/test_bing_images.py b/tests/unit/engines/test_bing_images.py index afc4cd6f..cb1d550d 100644 --- a/tests/unit/engines/test_bing_images.py +++ b/tests/unit/engines/test_bing_images.py @@ -52,7 +52,7 @@ class TestBingImagesEngine(SearxTestCase):
  • @@ -60,7 +60,7 @@ class TestBingImagesEngine(SearxTestCase):
    @@ -71,7 +71,7 @@ class TestBingImagesEngine(SearxTestCase):
  • diff --git a/tests/unit/engines/test_startpage.py b/tests/unit/engines/test_startpage.py index bdb3356b..4a8a443d 100644 --- a/tests/unit/engines/test_startpage.py +++ b/tests/unit/engines/test_startpage.py @@ -31,14 +31,14 @@ class TestStartpageEngine(SearxTestCase): self.assertEqual(startpage.response(response), []) html = """ -
    +
  • This should be the title

    -

    +

    This should be the content.

    @@ -56,7 +56,7 @@ class TestStartpageEngine(SearxTestCase): Mis en surbrillance

    - +
  • """ response = mock.Mock(text=html.encode('utf-8')) results = startpage.response(response) @@ -67,14 +67,14 @@ class TestStartpageEngine(SearxTestCase): self.assertEqual(results[0]['content'], 'This should be the content.') html = """ -
    +
  • This should be the title

    -

    +

    This should be the content.

    @@ -92,20 +92,20 @@ class TestStartpageEngine(SearxTestCase): Mis en surbrillance

    -
  • -
    + +
  • -

    +

    This should be the content.

    www.speedtest.net/fr/

    -
  • -
    + +
  • This should be the title @@ -127,7 +127,7 @@ class TestStartpageEngine(SearxTestCase): Mis en surbrillance

    -

  • + """ response = mock.Mock(text=html.encode('utf-8')) results = startpage.response(response)