diff --git a/searx/engines/startpage.py b/searx/engines/startpage.py index 3e067597e..166c11f83 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 @@ -79,8 +80,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_startpage.py b/tests/unit/engines/test_startpage.py index bdb3356b7..4a8a443dd 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 content.
@@ -56,7 +56,7 @@ class TestStartpageEngine(SearxTestCase): Mis en surbrillance
-+
This should be the content.
@@ -92,20 +92,20 @@ class TestStartpageEngine(SearxTestCase): Mis en surbrillance
-+
This should be the content.
www.speedtest.net/fr/
-