diff options
Diffstat (limited to 'searx/engines/apkmirror.py')
-rw-r--r-- | searx/engines/apkmirror.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/searx/engines/apkmirror.py b/searx/engines/apkmirror.py index f2ee12b..3a948dc 100644 --- a/searx/engines/apkmirror.py +++ b/searx/engines/apkmirror.py @@ -9,9 +9,10 @@ @parse url, title, thumbnail_src """ +from urllib.parse import urlencode from lxml import html -from searx.engines.xpath import extract_text -from searx.url_utils import urlencode +from searx.utils import extract_text, eval_xpath_list, eval_xpath_getindex + # engine dependent config categories = ['it'] @@ -41,12 +42,13 @@ def response(resp): dom = html.fromstring(resp.text) # parse results - for result in dom.xpath('.//div[@id="content"]/div[@class="listWidget"]/div[@class="appRow"]'): + for result in eval_xpath_list(dom, './/div[@id="content"]/div[@class="listWidget"]/div[@class="appRow"]'): - link = result.xpath('.//h5/a')[0] + link = eval_xpath_getindex(result, './/h5/a', 0) url = base_url + link.attrib.get('href') + '#downloads' title = extract_text(link) - thumbnail_src = base_url + result.xpath('.//img')[0].attrib.get('src').replace('&w=32&h=32', '&w=64&h=64') + thumbnail_src = base_url\ + + eval_xpath_getindex(result, './/img', 0).attrib.get('src').replace('&w=32&h=32', '&w=64&h=64') res = { 'url': url, |