forked from Ponysearch/Ponysearch
Merge branch 'master' into master
This commit is contained in:
commit
aeb6dab187
4 changed files with 19 additions and 20 deletions
|
@ -88,9 +88,7 @@ def response(resp):
|
||||||
|
|
||||||
url = json_data.get('purl')
|
url = json_data.get('purl')
|
||||||
img_src = json_data.get('murl')
|
img_src = json_data.get('murl')
|
||||||
|
thumbnail = json_data.get('turl')
|
||||||
thumb_json_data = loads(_quote_keys_regex.sub(r'\1"\2": \3', link.attrib.get('mad')))
|
|
||||||
thumbnail = thumb_json_data.get('turl')
|
|
||||||
|
|
||||||
# append result
|
# append result
|
||||||
results.append({'template': 'images.html',
|
results.append({'template': 'images.html',
|
||||||
|
|
|
@ -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
|
||||||
|
@ -75,8 +76,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 = ''
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ class TestBingImagesEngine(SearxTestCase):
|
||||||
<li>
|
<li>
|
||||||
<div>
|
<div>
|
||||||
<div class="imgpt">
|
<div class="imgpt">
|
||||||
<a m='{"purl":"page_url","murl":"img_url"}' mad='{"turl":"thumb_url"}'>
|
<a m='{"purl":"page_url","murl":"img_url","turl":"thumb_url"}'>
|
||||||
<img src="" alt="alt text" />
|
<img src="" alt="alt text" />
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -60,7 +60,7 @@ class TestBingImagesEngine(SearxTestCase):
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<div class="imgpt">
|
<div class="imgpt">
|
||||||
<a m='{"purl":"page_url2","murl":"img_url2"}' mad='{"turl":"thumb_url2"}'>
|
<a m='{"purl":"page_url2","murl":"img_url2","turl":"thumb_url2"}'>
|
||||||
<img src="" alt="alt text 2" />
|
<img src="" alt="alt text 2" />
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -71,7 +71,7 @@ class TestBingImagesEngine(SearxTestCase):
|
||||||
<li>
|
<li>
|
||||||
<div>
|
<div>
|
||||||
<div class="imgpt">
|
<div class="imgpt">
|
||||||
<a m='{"purl":"page_url3","murl":"img_url3"}' mad='{"turl":"thumb_url3"}'>
|
<a m='{"purl":"page_url3","murl":"img_url3","turl":"thumb_url3"}'>
|
||||||
<img src="" alt="alt text 3" />
|
<img src="" alt="alt text 3" />
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -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