forked from Ponysearch/Ponysearch
Merge pull request #1464 from miicha/bugfix_startpage
restore startpage search results
This commit is contained in:
commit
82bf9c6b29
2 changed files with 15 additions and 14 deletions
|
@ -32,8 +32,9 @@ search_url = base_url + 'do/search'
|
||||||
# specific xpath variables
|
# specific xpath variables
|
||||||
# ads xpath //div[@id="results"]/div[@id="sponsored"]//div[@class="result"]
|
# ads xpath //div[@id="results"]/div[@id="sponsored"]//div[@class="result"]
|
||||||
# not ads: div[@class="result"] are the direct childs of div[@id="results"]
|
# 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'
|
link_xpath = './/h3/a'
|
||||||
|
content_xpath = './p[@class="search-item__body"]'
|
||||||
|
|
||||||
|
|
||||||
# do search-request
|
# do search-request
|
||||||
|
@ -79,8 +80,8 @@ def response(resp):
|
||||||
|
|
||||||
title = extract_text(link)
|
title = extract_text(link)
|
||||||
|
|
||||||
if result.xpath('./p[@class="desc clk"]'):
|
if result.xpath(content_xpath):
|
||||||
content = extract_text(result.xpath('./p[@class="desc clk"]'))
|
content = extract_text(result.xpath(content_xpath))
|
||||||
else:
|
else:
|
||||||
content = ''
|
content = ''
|
||||||
|
|
||||||
|
|
|
@ -31,14 +31,14 @@ class TestStartpageEngine(SearxTestCase):
|
||||||
self.assertEqual(startpage.response(response), [])
|
self.assertEqual(startpage.response(response), [])
|
||||||
|
|
||||||
html = """
|
html = """
|
||||||
<div class='result' style=' *width : auto; *margin-right : 10%;'>
|
<li class="search-result search-item">
|
||||||
<h3>
|
<h3>
|
||||||
<a href='http://this.should.be.the.link/' id='title_2' name='title_2' >
|
<a href='http://this.should.be.the.link/' id='title_2' name='title_2' >
|
||||||
This should be the title
|
This should be the title
|
||||||
</a>
|
</a>
|
||||||
<span id='title_stars_2' name='title_stars_2'> </span>
|
<span id='title_stars_2' name='title_stars_2'> </span>
|
||||||
</h3>
|
</h3>
|
||||||
<p class='desc clk'>
|
<p class="search-item__body">
|
||||||
This should be the content.
|
This should be the content.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
|
@ -56,7 +56,7 @@ class TestStartpageEngine(SearxTestCase):
|
||||||
Mis en surbrillance
|
Mis en surbrillance
|
||||||
</A>
|
</A>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</li>
|
||||||
"""
|
"""
|
||||||
response = mock.Mock(text=html.encode('utf-8'))
|
response = mock.Mock(text=html.encode('utf-8'))
|
||||||
results = startpage.response(response)
|
results = startpage.response(response)
|
||||||
|
@ -67,14 +67,14 @@ class TestStartpageEngine(SearxTestCase):
|
||||||
self.assertEqual(results[0]['content'], 'This should be the content.')
|
self.assertEqual(results[0]['content'], 'This should be the content.')
|
||||||
|
|
||||||
html = """
|
html = """
|
||||||
<div class='result' style=' *width : auto; *margin-right : 10%;'>
|
<li class="search-result search-item">
|
||||||
<h3>
|
<h3>
|
||||||
<a href='http://www.google.com/aclk?sa=l&ai=C' id='title_2' name='title_2' >
|
<a href='http://www.google.com/aclk?sa=l&ai=C' id='title_2' name='title_2' >
|
||||||
This should be the title
|
This should be the title
|
||||||
</a>
|
</a>
|
||||||
<span id='title_stars_2' name='title_stars_2'> </span>
|
<span id='title_stars_2' name='title_stars_2'> </span>
|
||||||
</h3>
|
</h3>
|
||||||
<p class='desc clk'>
|
<p class="search-item__body">
|
||||||
This should be the content.
|
This should be the content.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
|
@ -92,20 +92,20 @@ class TestStartpageEngine(SearxTestCase):
|
||||||
Mis en surbrillance
|
Mis en surbrillance
|
||||||
</A>
|
</A>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</li>
|
||||||
<div class='result' style=' *width : auto; *margin-right : 10%;'>
|
<li class="search-result search-item">
|
||||||
<h3>
|
<h3>
|
||||||
<span id='title_stars_2' name='title_stars_2'> </span>
|
<span id='title_stars_2' name='title_stars_2'> </span>
|
||||||
</h3>
|
</h3>
|
||||||
<p class='desc clk'>
|
<p class="search-item__body">
|
||||||
This should be the content.
|
This should be the content.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span class='url'>www.speed<b>test</b>.net/fr/
|
<span class='url'>www.speed<b>test</b>.net/fr/
|
||||||
</span>
|
</span>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</li>
|
||||||
<div class='result' style=' *width : auto; *margin-right : 10%;'>
|
<li class="search-result search-item">
|
||||||
<h3>
|
<h3>
|
||||||
<a href='http://this.should.be.the.link/' id='title_2' name='title_2' >
|
<a href='http://this.should.be.the.link/' id='title_2' name='title_2' >
|
||||||
This should be the title
|
This should be the title
|
||||||
|
@ -127,7 +127,7 @@ class TestStartpageEngine(SearxTestCase):
|
||||||
Mis en surbrillance
|
Mis en surbrillance
|
||||||
</A>
|
</A>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</li>
|
||||||
"""
|
"""
|
||||||
response = mock.Mock(text=html.encode('utf-8'))
|
response = mock.Mock(text=html.encode('utf-8'))
|
||||||
results = startpage.response(response)
|
results = startpage.response(response)
|
||||||
|
|
Loading…
Reference in a new issue