summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/dev/engine_overview.rst4
-rw-r--r--searx/engines/core.py5
-rw-r--r--searx/engines/springer.py21
3 files changed, 17 insertions, 13 deletions
diff --git a/docs/dev/engine_overview.rst b/docs/dev/engine_overview.rst
index dc10b6ead..95ed267e2 100644
--- a/docs/dev/engine_overview.rst
+++ b/docs/dev/engine_overview.rst
@@ -386,11 +386,11 @@ the parameter ``template`` must be set to the desired type.
- DOI number (like ``10.1038/d41586-018-07848-2``)
* - issn
- - :py:class:`str`
+ - :py:class:`List <list>`\ [\ :py:class:`str`\ ]
- ISSN number like ``1476-4687``
* - isbn
- - :py:class:`str`
+ - :py:class:`List <list>`\ [\ :py:class:`str`\ ]
- ISBN number like ``9780201896831``
* - pdf_url
diff --git a/searx/engines/core.py b/searx/engines/core.py
index 2a71a216c..2fa66e226 100644
--- a/searx/engines/core.py
+++ b/searx/engines/core.py
@@ -77,6 +77,7 @@ def response(resp):
if url is None:
continue
+ publishedDate = None
time = source['publishedDate'] or source['depositedDate']
if time:
publishedDate = datetime.fromtimestamp(time / 1000)
@@ -106,8 +107,8 @@ def response(resp):
# 'pages' : '',
# 'number': '',
'doi': source['doi'],
- 'issn': source['issn'],
- 'isbn': source.get('isbn'), # exists in the rawRecordXml
+ 'issn': [x for x in [source.get('issn')] if x],
+ 'isbn': [x for x in [source.get('isbn')] if x], # exists in the rawRecordXml
'pdf_url': source.get('repositoryDocument', {}).get('pdfOrigin'),
}
)
diff --git a/searx/engines/springer.py b/searx/engines/springer.py
index e5255b794..a4d0832d8 100644
--- a/searx/engines/springer.py
+++ b/searx/engines/springer.py
@@ -41,7 +41,6 @@ def response(resp):
json_data = loads(resp.text)
for record in json_data['records']:
- content = record['abstract']
published = datetime.strptime(record['publicationDate'], '%Y-%m-%d')
authors = [" ".join(author['creator'].split(', ')[::-1]) for author in record['creators']]
tags = record.get('genre')
@@ -50,20 +49,24 @@ def response(resp):
results.append(
{
'template': 'paper.html',
- 'title': record['title'],
'url': record['url'][0]['value'].replace('http://', 'https://', 1),
- 'type': record.get('contentType'),
- 'content': content,
+ 'title': record['title'],
+ 'content': record['abstract'],
+ 'comments': record['publicationName'],
+ 'tags': tags,
'publishedDate': published,
+ 'type': record.get('contentType'),
'authors': authors,
- 'doi': record.get('doi'),
+ # 'editor': '',
+ 'publisher': record.get('publisher'),
'journal': record.get('publicationName'),
- 'pages': record.get('start_page') + '-' + record.get('end_page'),
- 'tags': tags,
- 'issn': [record.get('issn')],
- 'isbn': [record.get('isbn')],
'volume': record.get('volume') or None,
+ 'pages': '-'.join([x for x in [record.get('startingPage'), record.get('endingPage')] if x]),
'number': record.get('number') or None,
+ 'doi': record.get('doi'),
+ 'issn': [x for x in [record.get('issn')] if x],
+ 'isbn': [x for x in [record.get('isbn')] if x],
+ # 'pdf_url' : ''
}
)
return results