diff options
| author | Markus Heiser <markus.heiser@darmarit.de> | 2019-12-03 11:38:52 +0100 |
|---|---|---|
| committer | Markus Heiser <markus.heiser@darmarit.de> | 2019-12-03 11:38:52 +0100 |
| commit | 1b90e1403ba832672d8bde02e15a20834ee02e0e (patch) | |
| tree | 09545a498e3fe172cf51cc85ba7c4afe8fba9a3c /searx/engines/duden.py | |
| parent | 52450fd08a3c70f6cc0ef806fc450f70dc867d49 (diff) | |
| parent | 1bb46e5e377dee6a742b1d03876aa188d237bcb2 (diff) | |
Merge branch 'master' of https://github.com/asciimoo/searx into boilerplate
Diffstat (limited to 'searx/engines/duden.py')
| -rw-r--r-- | searx/engines/duden.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/searx/engines/duden.py b/searx/engines/duden.py index 444f18c1f..cf2f1a278 100644 --- a/searx/engines/duden.py +++ b/searx/engines/duden.py @@ -11,6 +11,7 @@ from lxml import html, etree import re from searx.engines.xpath import extract_text +from searx.utils import eval_xpath from searx.url_utils import quote, urljoin from searx import logger @@ -52,9 +53,9 @@ def response(resp): dom = html.fromstring(resp.text) try: - number_of_results_string = re.sub('[^0-9]', '', dom.xpath( - '//a[@class="active" and contains(@href,"/suchen/dudenonline")]/span/text()')[0] - ) + number_of_results_string =\ + re.sub('[^0-9]', '', + eval_xpath(dom, '//a[@class="active" and contains(@href,"/suchen/dudenonline")]/span/text()')[0]) results.append({'number_of_results': int(number_of_results_string)}) @@ -62,12 +63,12 @@ def response(resp): logger.debug("Couldn't read number of results.") pass - for result in dom.xpath('//section[not(contains(@class, "essay"))]'): + for result in eval_xpath(dom, '//section[not(contains(@class, "essay"))]'): try: - url = result.xpath('.//h2/a')[0].get('href') + url = eval_xpath(result, './/h2/a')[0].get('href') url = urljoin(base_url, url) - title = result.xpath('string(.//h2/a)').strip() - content = extract_text(result.xpath('.//p')) + title = eval_xpath(result, 'string(.//h2/a)').strip() + content = extract_text(eval_xpath(result, './/p')) # append result results.append({'url': url, 'title': title, |