on master help sign in
[mod] bing_news: use eval_xpath_getindex

remove unused function searx.utils.list_get

commitde887c6347db4c810f7d1e11c77633340d4e2fbd authorAlexandre Flament <alex@al-f.net> dateThu 26 Nov 2020, 15:38 (6 years ago) parent1d0c368
2 files changed+7−24
searx/engines/bing_news.py+7−6 searx/utils.py−18
searx/engines/bing_news.py+7−6
@@ -15,7 +15,8 @@ from datetime import datetime
1515from dateutil import parser
1616from urllib.parse import urlencode, urlparse, parse_qsl
1717from lxml import etree
18−from searx.utils import list_get, match_language
18+from lxml.etree import XPath
19+from searx.utils import match_language, eval_xpath_getindex
1920from searx.engines.bing import language_aliases
2021from searx.engines.bing import _fetch_supported_languages, supported_languages_url # NOQA # pylint: disable=unused-import
2122
@@ -94,12 +95,12 @@ def response(resp):
9495 # parse results
9596 for item in rss.xpath('./channel/item'):
9697 # url / title / content
97− url = url_cleanup(item.xpath('./link/text()')[0])
98− title = list_get(item.xpath('./title/text()'), 0, url)
99− content = list_get(item.xpath('./description/text()'), 0, '')
98+ url = url_cleanup(eval_xpath_getindex(item, './link/text()', 0, default=None))
99+ title = eval_xpath_getindex(item, './title/text()', 0, default=url)
100+ content = eval_xpath_getindex(item, './description/text()', 0, default='')
100101
101102 # publishedDate
102− publishedDate = list_get(item.xpath('./pubDate/text()'), 0)
103+ publishedDate = eval_xpath_getindex(item, './pubDate/text()', 0, default=None)
103104 try:
104105 publishedDate = parser.parse(publishedDate, dayfirst=False)
105106 except TypeError:
@@ -108,7 +109,7 @@ def response(resp):
108109 publishedDate = datetime.now()
109110
110111 # thumbnail
111− thumbnail = list_get(item.xpath('./News:Image/text()', namespaces=ns), 0)
112+ thumbnail = eval_xpath_getindex(item, XPath('./News:Image/text()', namespaces=ns), 0, default=None)
112113 if thumbnail is not None:
113114 thumbnail = image_url_cleanup(thumbnail)
114115
searx/utils.py−18
@@ -269,24 +269,6 @@ def dict_subset(d, properties):
269269 return result
270270
271271
272−def list_get(a_list, index, default=None):
273− """Get element in list or default value
274− Examples:
275− >>> list_get(['A', 'B', 'C'], 0)
276− 'A'
277− >>> list_get(['A', 'B', 'C'], 3)
278− None
279− >>> list_get(['A', 'B', 'C'], 3, 'default')
280− 'default'
281− >>> list_get(['A', 'B', 'C'], -1)
282− 'C'
283− """
284− if len(a_list) > index:
285− return a_list[index]
286− else:
287− return default
288−
289−
290272def get_torrent_size(filesize, filesize_multiplier):
291273 """
292274