Alexandre Flament
5e055b069b
[fix) fix apk_mirror engine
2021-02-09 11:02:12 +01:00
Marc Abonce Seguin
64e81794fe
add support for Chinese variants in Wikipedia
2021-02-08 21:56:45 -07:00
Hermógenes Oliveira
514faa9162
[feat] recoll: paged json support
2021-02-07 10:05:35 -03:00
mrwormo
c4c1636b18
Add Creative Commons search engine
2021-02-04 11:31:35 +01:00
Alexandre Flament
ca93a01844
[mod] dynamically set language_support variable
...
The language_support variable is set to True by default,
and set to False in only 5 engines.
Except the documentation and the /config URL, this variable is not used.
This commit remove the variable definition in the engines, and
set value according to supported_languages length: False when the length is 0,
True otherwise.
Close #2485
2021-02-01 17:10:37 +01:00
Markus Heiser
7f505bdc6f
[fix] google: avoid unnecessary SearxEngineXPathException errors
...
Avoid SearxEngineXPathException errors when parsing non valid results::
.//div[@class="yuRUbf"]//a/@href index 0 not found
Traceback (most recent call last):
File "./searx/engines/google.py", line 274, in response
url = eval_xpath_getindex(result, href_xpath, 0)
File "./searx/searx/utils.py", line 608, in eval_xpath_getindex
raise SearxEngineXPathException(xpath_spec, 'index ' + str(index) + ' not found')
searx.exceptions.SearxEngineXPathException: .//div[@class="yuRUbf"]//a/@href index 0 not found
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-28 10:08:50 +01:00
Markus Heiser
b1fefec40d
[fix] normalize the language & region aspects of all google engines
...
BTW: make the engines ready for search.checker:
- replace eval_xpath by eval_xpath_getindex and eval_xpath_list
- google_images: remove outer try/except block
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-28 10:08:46 +01:00
Markus Heiser
8cdad5d85d
[fix] google-videos: parse values for 'length' & 'author'
...
The 'video.html' template from the 'oscar' design supports replacement
for *author* and *length*. Google-videos does not have an author, alternatively
the publisher info from is used for the *author*.
Hint: these replacements are not supported by the 'simple' design.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-24 09:51:24 +01:00
Markus Heiser
89b3050b5c
[fix] revise of the google-Video engine
...
This revise is based on the methods developed in the revise of the google engine
(see commit 410c2f9
).
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-24 09:39:30 +01:00
Alexandre Flament
8c46b767d0
[fix] google_news: avoid one HTTP redirect except for the English results
...
also add
params['soft_max_redirects'] = 1
to avoid false error reporting in /stats/errors
2021-01-24 08:53:35 +01:00
Markus Heiser
5f92dfcdbe
[fix] google-news: query uses locale without country tag
...
Wthout country-region tag google will redirect to correct the contry tag [1]:
SEARX_DEBUG=1 searx-checker -v "google news"
...
https://news.google.com:443 "GET /search?q=computer&hl=en... HTTP/1.1" 302 0
https://news.google.com:443 "GET /search?q=computer&hl=en-US&.... HTTP/1.1" 200 None
...
[1] https://github.com/searx/searx/pull/2483#issuecomment-765600849
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-23 11:37:14 +01:00
Markus Heiser
baec54c492
[fix] revise of the google-news engine
...
This revise is based on the methods developed in the revise of the google engine
(see commit 410c2f9
).
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-22 18:49:45 +01:00
Alexandre Flament
b405646749
Merge pull request #2451 from mrwormo/invidious-engine
...
[Fix] Invidious Engine
2021-01-16 19:25:45 +01:00
Alexandre Flament
a4dcfa025c
[enh] engines: add about variable
...
move meta information from comment to the about variable
so the preferences, the documentation can show these information
2021-01-14 20:57:17 +01:00
mrwormo
2dff3887f0
[fix] Invidious engine by enabling requests by randomly picking amongst working instances
2021-01-14 12:12:56 +01:00
Alexandre Flament
3f8ebf70b1
[fix] pylint: use "raise ... from ..."
2020-12-20 09:46:53 +01:00
Alexandre Flament
eb33ae6893
[fix] Python 3.9: use html.unescape instead of HTMLParser.unescape
2020-12-20 09:46:53 +01:00
Alexandre Flament
02fc4147ce
[mod] dictzone, translated, currency_convert: use engine_type online_curency and online_dictionnary
2020-12-17 11:39:36 +01:00
Alexandre Flament
7ec8bc3ea7
[mod] split searx.search into different processors
...
see searx.search.processors.abstract.EngineProcessor
First the method searx call the get_params method.
If the return value is not None, then the searx call the method search.
2020-12-17 11:39:36 +01:00
lucky13820
fea8958e99
Fix the StartPage result title is showing the url
...
Fix the issue 2395 where StartPage result title is showing the url. https://github.com/searx/searx/issues/2395
2020-12-16 13:54:14 -08:00
Alexandre Flament
292b73a3fc
Merge pull request #2385 from joshu9h/patch-1
...
[Fix] Startpage
2020-12-14 17:56:48 +01:00
Alexandre Flament
36600118fb
Merge pull request #2372 from dalf/remove-broken-engines
...
[remove] remove searchcode_doc and twitter
2020-12-13 17:11:05 +01:00
joshu9h
8260435c8b
[Fix] Startpage
2020-12-13 15:43:50 +01:00
Alexandre Flament
3c4a9c1188
Merge pull request #2358 from dalf/fix-command
...
[fix] command engine: SearchQuery.query is str not bytes
2020-12-11 14:53:24 +01:00
Alexandre Flament
d703119d3a
[enh] add raise_for_httperror
...
check HTTP response:
* detect some comme CAPTCHA challenge (no solving). In this case the engine is suspended for long a time.
* otherwise raise HTTPError as before
the check is done in poolrequests.py (was before in search.py).
update qwant, wikipedia, wikidata to use raise_for_httperror instead of raise_for_status
2020-12-11 14:37:08 +01:00
Alexandre Flament
033f39bff7
Merge pull request #2376 from dalf/fix-mojeek
...
Fix mojeek
2020-12-11 13:14:54 +01:00
Alexandre Flament
6bc6d5e9fd
Merge pull request #2371 from dalf/mod-genius
...
[mod) genious: return valid results even if contents are empty
2020-12-11 13:14:03 +01:00
Alexandre Flament
d41cafd5f3
[fix] xpath, mojeek: fix commit 58d72f2692
...
before commit 58d72f2
, category was not set in xpath.py,
so searx/engines/__init__py was setting the category to ['general']
the commit 58d72f2
set the category to [] which is not replaced by searx/engines/__init__.py
consequence: the mojeek engine is hidden in the preferences.
this commit revert the xpath.py change.
close #2368
2020-12-10 10:52:06 +01:00
Noémi Ványi
3a63dfbdd7
display if an engine does not support https
...
Closes #302
2020-12-09 20:49:54 +01:00
Alexandre Flament
1c9e7cef50
[remove] remove searchcode_doc and twitter
...
* twitter: the API has changed. the engine needs to rewritten.
* searchcode_doc: the API about documentation doesn't exist anymore.
2020-12-09 13:14:31 +01:00
Alexandre Flament
fa73f10f11
[mod) genious: return valid results even if contents are empty
2020-12-09 13:01:34 +01:00
Alexandre Flament
a77d8c8227
Merge pull request #2359 from dalf/update-duden
...
[mod] duden engine
2020-12-08 20:33:38 +01:00
Alexandre Flament
bd4869ecd0
Merge pull request #2366 from dalf/remove-seedpeer
...
[remove] seedpeer engine
2020-12-08 20:33:23 +01:00
Alexandre Flament
56c64d6b64
[remove] seedpeer engine
...
the website is offline.
2020-12-07 21:02:29 +01:00
Alexandre Flament
c1a9732268
Merge pull request #2364 from dalf/fix-youtube-noapi
...
[fix] youtube_noapi engine
2020-12-07 20:26:00 +01:00
Alexandre Flament
13d3004703
Merge pull request #2365 from dalf/fix-soundcloud
...
[fix] soundclound: accept result without content
2020-12-07 20:25:17 +01:00
Alexandre Flament
62073c0e1d
Merge pull request #2361 from dalf/fix-1x
...
[fix] 1x engine
2020-12-07 20:24:47 +01:00
Alexandre Flament
923bc02c17
Merge pull request #2363 from dalf/fix-wikipedia-minor
...
[fix] wikipedia: minor fix: return no result instead of crash in some very few cases.
2020-12-07 18:33:37 +01:00
Alexandre Flament
deb1bde20d
[fix] soundclound: accept result without content
2020-12-07 17:45:36 +01:00
Alexandre Flament
34df0f7910
[fix] youtube_noapi engine
2020-12-07 17:44:31 +01:00
Alexandre Flament
58d51e082d
[fix] wikipedia: minor fix: return no result instead of crash in some very few cases.
...
In few cases, the JSON results doesn't contains the key 'type'.
2020-12-07 17:42:05 +01:00
Alexandre Flament
4ec810749b
[fix] 1x engine
2020-12-07 15:46:00 +01:00
Alexandre Flament
1e781863fa
[fix] command engine: SearchQuery.query is str not bytes
...
see c225db45c8
2020-12-07 10:43:42 +01:00
Alexandre Flament
9bf594cbcf
[mod] duden engine
...
* add params['soft_max_redirects'] = 1 (when there is spelling suggestion)
* avoid try..except
* use eval_xpath_* functions
2020-12-07 10:31:11 +01:00
Alexandre Flament
a458451d20
Merge pull request #2356 from dalf/fix-ddd
...
[fix] duckduckgo_definitions: fix relative image URL
2020-12-07 10:16:53 +01:00
Alexandre Flament
925bb561a2
Merge pull request #2352 from dalf/no_http
...
Remove HTTP connections as much as possible
2020-12-06 10:18:49 +01:00
Alexandre Flament
28cc644f0a
[fix] duckduckgo_definitions: fix relative image URL
...
ddg returns relative URL to https://duckduckgo.com/
2020-12-06 10:14:09 +01:00
Alexandre Flament
cdceec1cbb
Merge pull request #2354 from dalf/fix-wikipedia
...
[fix] wikipedia engine: don't raise an error when the query is not found
2020-12-04 20:42:45 +01:00
Alexandre Flament
f0054d67f1
[fix] wikipedia engine: don't raise an error when the query is not found
...
Add a new parameter "raise_for_status", set by default to True.
When True, any HTTP status code >= 300 raise an exception ( #2332 )
When False, the engine can manage the HTTP status code by itself.
2020-12-04 20:04:39 +01:00
Alexandre Flament
bef2f2efa8
[fix] wikidata: fix crash when the item has no description at all and at least one URL.
2020-12-04 17:17:20 +01:00
Alexandre Flament
244e812f37
[fix] remove searx/engines/filecrop.py (dead code)
2020-12-04 16:48:15 +01:00
Alexandre Flament
fa909c7c02
[mod] stackoverflow & yandex: detect CAPTCHA response
2020-12-03 13:23:19 +01:00
Alexandre Flament
64cccae99e
[mod] various engines: use eval_xpath* functions and searx.exceptions.*
...
Engine list: ahmia, duckduckgo_images, elasticsearch, google, google_images, google_videos, youtube_api
2020-12-03 10:22:48 +01:00
Alexandre Flament
ad72803ed9
[mod] xpath, 1337x, acgsou, apkmirror, archlinux, arxiv: use eval_xpath_* functions
2020-12-03 10:22:48 +01:00
Alexandre Flament
de887c6347
[mod] bing_news: use eval_xpath_getindex
...
remove unused function searx.utils.list_get
2020-12-03 10:22:48 +01:00
Alexandre Flament
1d0c368746
[enh] record details exception per engine
...
add an new API /stats/errors
2020-12-03 10:22:48 +01:00
Markus Heiser
bef185723a
[refactor] digg - improve results and clean up source code
...
- strip html tags and superfluous quotation marks from content
- remove not needed cookie from request
- remove superfluous imports
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-02 21:54:27 +01:00
Markus Heiser
6b0a896f01
[mod] digg - pylint searx/engines/digg.py
...
Eliminate redundant file names which are tested by test.pylint and ignored by
test.pep8
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-02 20:59:30 +01:00
Markus Heiser
173b744ef0
[fix] digg - the ISO time stamp of published date has been changed
...
Error pattern::
Engines cannot retrieve results:
digg (unexpected crash time data '2020-10-16T14:09:55Z' does not match format '%Y-%m-%d %H:%M:%S')
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-02 20:40:12 +01:00
Alexandre Flament
b00d108673
[mod] pylint: numerous minor code fixes
2020-12-01 15:21:19 +01:00
Alexandre Flament
9ed3ee2beb
[mod] wikidata: WDGeoAttribute class: doesn't change the method signature of get_str
2020-12-01 15:21:17 +01:00
Alexandre Flament
3cfef61123
[fix] /stats: report error percentage instead of error count
...
This bug exists since the PR https://github.com/searx/searx/pull/751
2020-12-01 15:07:09 +01:00
Noémi Ványi
4a36a3044d
Add recoll engine ( #2325 )
...
recoll is a local search engine based on Xapian:
http://www.lesbonscomptes.com/recoll/
By itself recoll does not offer web or API access,
this can be achieved using recoll-webui:
https://framagit.org/medoc92/recollwebui.git
This engine uses a custom 'files' result template
set `base_url` to the location where recoll-webui can be reached
set `dl_prefix` to a location where the file hierarchy as indexed by recoll can be reached
set `search_dir` to the part of the indexed file hierarchy to be searched, use an empty string to search the entire search domain
2020-11-30 08:35:15 +01:00
M. Efe Çetin
d1f527c3af
Photon API Link Update
...
Via https://photon.komoot.io/
2020-11-27 10:22:28 +03:00
Alexandre Flament
3786920df9
[enh] Add multiple outgoing proxies
...
credits go to @bauruine see https://github.com/searx/searx/pull/1958
2020-11-20 15:29:21 +01:00
Markus Heiser
c71d214b0c
[refactor] deviantart - improve results and clean up source code
...
Devian's request and response forms has been changed.
- fixed title
- fixed time_range_dict to 'popular-*-***'
- use image from <noscript> if exists
- drop obsolete "http to https, remove domain sharding"
- use query URL https://www.deviantart.com/search/deviations?page=5&q=foo
- add searx/engines/deviantart.py to pylint check (test.pylint)
Error pattern::
There DEBUG:searx:result: invalid title: {'url': 'https://www.deviantart.com/ ...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-11-14 17:09:56 +01:00
Alexandre Flament
3038052c79
[mod] remove unused import
...
use
from searx.engines.duckduckgo import _fetch_supported_languages, supported_languages_url # NOQA
so it is possible to easily remove all unused import using autoflake:
autoflake --in-place --recursive --remove-all-unused-imports searx tests
2020-11-14 14:11:02 +01:00
Alexandre Flament
c3d9b17c2a
Merge pull request #2292 from kvch/elasticsearch-engine
...
New engine: Elasticsearch
2020-11-14 13:25:08 +01:00
Alexandre Flament
102c08838b
Merge pull request #2289 from dalf/pylint
...
[mod] pylint: add extension-pkg-whitelist=lxml.etree
2020-11-14 13:24:31 +01:00
Noémi Ványi
43e697681e
New engine: Elasticsearch
2020-11-10 19:53:38 +01:00
Alexandre Flament
58d72f2692
[mod] pylint: minor code change to allow pylint globally
...
This commit is only a step, it doesn't fix all the issues reported by pylint
2020-11-03 11:35:53 +01:00
Alexandre Flament
eed43783f9
[fix] comamnd engine: fix import
2020-11-03 10:55:08 +01:00
Alexandre Flament
a08df82574
[fix] scanr_structure engine: fix import
2020-11-03 10:54:02 +01:00
Alexandre Flament
95bd6033fa
[mod] wikidata engine: use one SPARQL request instead of 2 HTTP requests.
2020-10-28 08:09:25 +01:00
Alexandre Flament
ca593728af
[mod] duckduckgo_definitions: display only user friendly attributes / URL
...
various bug fixes
2020-10-28 08:09:25 +01:00
a01200356
c3daa08537
[enh] Add onions category with Ahmia, Not Evil and Torch
...
Xpath engine and results template changed to account for the fact that
archive.org doesn't cache .onions, though some onion engines migth have
their own cache.
Disabled by default. Can be enabled by setting the SOCKS proxies to
wherever Tor is listening and setting using_tor_proxy as True.
Requires Tor and updating packages.
To avoid manually adding the timeout on each engine, you can set
extra_proxy_timeout to account for Tor's (or whatever proxy used) extra
time.
2020-10-25 17:59:05 -07:00
Nicholas Kegler
8e15d3e4c1
Open Semantic Search Engine
2020-10-25 17:50:00 +01:00
Noémi Ványi
e158eeee4b
Propagate error messages from YouTube API
2020-10-09 17:34:26 +02:00
Adam Tauber
835d16cbb1
Merge pull request #2255 from kvch/yacy-improvements
...
Add yacy improvements: HTTP digest auth, category checking
2020-10-09 16:34:42 +02:00
Alexandre Flament
cfd21bc475
[fix] fix duckduckgo engine
...
- remove paging support: a "vqd" parameter is required between each request. This parameter is uniq for each request
- update the URL (no redirect), use the POST method
- language support: works if there is no more than request per minute, otherwise it is ignored !
2020-10-09 16:00:42 +02:00
Noémi Ványi
72c7fd25fe
Add yacy improvements: HTTP digest auth, category checking
2020-10-09 15:06:05 +02:00
Noémi Ványi
f0278d41fc
add ebay enginte to shopping category
2020-10-08 13:20:55 +02:00
Alexandre Flament
a9dc54bebc
[mod] Add searx.data module
...
Instead of loading the data/*.json in different location,
load these files in the new searx.data module.
2020-10-07 10:29:34 +02:00
Alexandre Flament
8659212f5a
[fix] drop Python 2: use collections.abc.Iterable instead of collections.Iterable
2020-10-06 09:43:24 +02:00
Alexandre Flament
b728cb610b
Merge pull request #2241 from dalf/move-extract-text-and-url
...
Move the extract_text and extract_url functions to searx.utils
2020-10-04 09:06:20 +02:00
Finn
53c8d945b4
[enh] Add SepiaSearch engine ( #2227 )
...
supported_languages values: see https://framagit.org/framasoft/peertube/search-index/-/blob/master/client/src/views/Search.vue#L618-641
2020-10-03 13:00:10 +02:00
Alexandre Flament
2006eb4680
[mod] move extract_text, extract_url to searx.utils
2020-10-02 18:13:56 +02:00
Markus Heiser
8162d7aff4
[fix] google engine - div classes has been renamed in HTML reult
...
Since 1. October 2020 google has changed the 'class' attribute of the HTML
result page.
Fix the xpath expressions and ignore <div class="g" ../> sections which do not
match to title's xpath expression.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-10-01 09:44:29 +02:00
Alexandre Flament
f204e4903d
[fix] migration from github.com/asciimoo/searx to github.com/searx/searx : fix URLs
2020-09-28 16:44:14 +02:00
Marc Abonce Seguin
ecf5899153
fetch google's search langs rather than ui langs
2020-09-22 11:37:44 +02:00
Marc Abonce Seguin
41800835f9
fetch supported languages for startpage engine
2020-09-22 11:37:44 +02:00
Marc Abonce Seguin
ea9d979cc3
add language names in qwant's fetch languages function
2020-09-22 11:37:44 +02:00
Dalf
c225db45c8
Drop Python 2 (4/n): SearchQuery.query is a str instead of bytes
2020-09-10 10:49:42 +02:00
Dalf
1022228d95
Drop Python 2 (1/n): remove unicode string and url_utils
2020-09-10 10:39:04 +02:00
Marc Abonce Seguin
ab20ca182c
use Wikipedia's REST v1 API
2020-09-10 09:54:30 +02:00
Noémi Ványi
f0ca1c3483
[enh] Add command line engines: git grep, find, etc. ( #2128 )
...
A new "base" engine called command is introduced. It is the foundation for all command line engines for now.
You can use this engine to create your own command line engine.
Add some engines (commented out to make sure no one enables anything accidentally):
* git grep: This engine lets you grep in the searx repo.
* locate: If locate is installed and initialized, you can search on the FS.
* find: You can find files with a specific name from where you started searx.
* pattern search in files: This engine utilizes the command fgrep.
* regex search in files: This engine runs `grep` to find a file based on its contents.
2020-09-08 09:51:53 +02:00
Alexandre Flament
3397382754
[enh] stop searx when an engine raise an SyntaxError exception ( #2177 )
...
and some other exceptions:
* KeyboardInterrupt
* SystemExit
* RuntimeError
* SystemError
* ImportError: an engine with an unmet dependency will stop everything.
2020-09-07 15:39:26 +02:00
Alexandre Flament
b329058c1a
Revert "[enh] test: load each engine to check for syntax errors"
...
This reverts commit 4fb3ed2c63
.
2020-08-31 19:00:06 +02:00
Adam Tauber
6f9aa0e258
Merge pull request #2160 from dalf/test_load_engine
...
[enh] test: load each engine to check for syntax errors
2020-08-31 14:29:52 +02:00
Adam Tauber
6ded6e7a9a
[fix] skip uncomplete image results - closes #1496
2020-08-31 14:07:45 +02:00
Dalf
4fb3ed2c63
[enh] test: load each engine to check for syntax errors
2020-08-28 12:12:32 +02:00
Marc Abonce Seguin
0d8970c8f2
only return one url per "type" in Wikidata ( #2151 )
...
i.e. only one official website, one Twitter, etc.
2020-08-27 21:44:48 +02:00
Émilien Devos
27d74826f1
[enh] add yggtorrent engine ( #2135 )
2020-08-18 18:02:41 +02:00
Emilien Devos
c15a91a534
[fix] piratebay engine date and pep8 indentation
2020-08-10 23:44:53 +02:00
Emilien Devos
52d78d8418
[fix] piratebay engine
2020-08-10 20:26:59 +02:00
Adam Tauber
77103c7874
Merge pull request #2116 from mikeri/invidiousres
...
Include author and video length in Invidious results
2020-08-10 12:49:17 +02:00
Vlad
f678388dbc
Fix google images 'get image' button bug from issue #2103 ( #2115 )
...
Closes #2103
2020-08-08 19:35:22 +02:00
Michael Ilsaas
a1ce141c99
add peertube engine ( #2109 )
2020-08-08 19:22:53 +02:00
Michael Ilsaas
2ed8ad7691
include length in invidious results
2020-08-02 13:31:04 +02:00
Michael Ilsaas
0305fe0dd5
include author in invidious results
2020-08-02 13:30:38 +02:00
Marc Abonce Seguin
77b9faa8df
fix Wikipedia's paragraph extraction
2020-07-26 23:53:40 -07:00
Michael Ilsaas
98cb6b6701
Update torrentz2 URL from .eu to .is
2020-07-26 15:56:54 +02:00
xywei
1d4657b714
Fix relative urls that do not start with '/'
2020-07-23 11:12:19 -05:00
Gaspard d'Hautefeuille
4e346e741a
fix python 3 support
2020-07-12 23:43:24 +01:00
Adam Tauber
52eba0c721
[fix] pep8
2020-07-08 00:46:03 +02:00
Markus Heiser
16f8ec894a
[fix] revise google images engine
...
this commit is picked from #1985
2020-07-07 21:59:15 +02:00
Markus Heiser
410c2f903d
[fix] revise google engine
...
this commit is picked from #1985
2020-07-07 21:50:59 +02:00
Markus Heiser
8d318ee142
Merge branch 'master' into gigablast
2020-06-29 16:09:59 +00:00
Sophie Tauchert
71db7b1238
Fix YaCy text results returned as images
2020-06-29 14:48:56 +02:00
Noémi Ványi
93cbd85b8a
Merge branch 'master' into duckduckgo_correction
2020-06-28 20:28:12 +02:00
Markus Heiser
5fac6cffa2
Merge branch 'master' into gigablast
2020-06-26 08:09:33 +00:00
Markus Heiser
5293e58032
[fix] yahoo engine - changed content_xpath
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-06-25 21:45:42 +02:00
Markus Heiser
223430ff30
Merge branch 'master' into gigablast
2020-06-16 07:36:44 +00:00
Adam Tauber
32f7877235
[fix] resolve flickr_noapi encoding issues
2020-06-15 19:15:24 +02:00
Gordon Quad
385e9b5c9e
add correction support for duckduckgo
2020-06-13 22:43:10 +01:00
Markus Heiser
ee0da61cbb
Merge branch 'master' into gigablast
2020-06-10 04:54:57 +00:00
Adam Tauber
aa7c043ff4
[fix] resolve pep8 errors
2020-06-10 00:34:57 +02:00
Adam Tauber
29960aa1d9
[enh] add official site link to the top of the infobox - closes #1644
2020-06-09 23:49:13 +02:00
Adam Tauber
6c06286251
[enh] add length and author details to youtube videos
...
closes #775
2020-06-09 20:31:51 +02:00
Adam Tauber
2c6531b233
[enh] add routing directions to osm search - closes #254
2020-06-09 17:18:44 +02:00
Markus Heiser
74135007eb
Merge branch 'master' into gigablast
2020-06-01 06:23:45 +00:00
Noémi Ványi
e3282748d0
add display_error_messages option to engine settings
...
A new option is added to engines to hide error messages from users. It
is called `display_error_messages` and by default it is set to `True`.
If it is set to `False` error messages do not show up on the UI.
Keep in mind that engines are still suspended if needed regardless of
this setting.
Closes #1828
2020-05-31 19:17:48 +02:00
Markus Heiser
ee5d2b319b
[fix] gigablast requires a random extra parameter
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-05-29 12:48:58 +02:00
Markus Heiser
a18760b322
[fix] revise of the gigablast engine (WIP)
...
The gigablast API has changed and seems to have some quirks, this is the first
revise. More work (hacks) are needed.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-05-28 19:24:03 +02:00
Markus Heiser
57c7b90edd
[fix] gigablast does no longer support *supported_languages_url*
...
Since there are zero results, we can remove it:
$ make engines.languages
fetch languages ..
...
fetched 0 languages from engine gigablast
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-05-28 15:21:01 +02:00
Markus Heiser
de179ecc5b
[fix] remove debug print from commit e5305f8
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-05-28 15:17:59 +02:00
Markus Heiser
9302d1fc17
Merge branch 'master' into master
2020-04-20 12:44:50 +00:00
Noémi Ványi
fcb44c6542
Merge branch 'master' into fix_startpage_ValueError_on_spanish_datetime
2020-04-15 23:33:16 +02:00
HLFH
3a26093c46
Remove discontinued faroo engine
2020-04-15 16:46:15 +01:00
Spühler Stefan
4f90fb6a92
[Fix] Startpage ValueError on Spanish date format
...
datetime.parser.parse() does not know the Spanish date format which
leads to a ValueError. Fixes #1870
Traceback (most recent call last):
File "/usr/local/searx/searx/search.py", line 160, in search_one_http_request_safe
search_results = search_one_http_request(engine, query, request_params)
File "/usr/local/searx/searx/search.py", line 97, in search_one_http_request
return engine.response(response)
File "/usr/local/searx/searx/engines/startpage.py", line 102, in response
published_date = parser.parse(date_string, dayfirst=True)
File "/usr/local/searx/searx-ve/lib/python3.6/site-packages/dateutil/parser/_parser.py", line 1358, in parse
return DEFAULTPARSER.parse(timestr, **kwargs)
File "/usr/local/searx/searx-ve/lib/python3.6/site-packages/dateutil/parser/_parser.py", line 649, in parse
raise ValueError("Unknown string format:", timestr)
ValueError: ('Unknown string format:', '24 Ene 2013')
2020-03-09 09:31:20 +01:00
Markus Heiser
ad7a6e6e10
bugfix(!biv) : bing-video do not like "older" User-Agents
...
When selecting other languages than 'en', bing-video did not handle the language
correct and gave very bad results. Since User-Agent is normaly rotated in
searx, the behavior of a !biv search was unpredictable and paging was broken.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 17:28:59 +01:00
Markus Heiser
1c853f9573
bing_news: parital rollback of c89c05bc
...
The bing_news bug (discussed in #1838 ) was caused by wrong language tags, which
was fixed e0c99d9d
/ no need to change the bing_news search string.
closes: https://github.com/asciimoo/searx/issues/1838
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 11:07:59 +01:00
Markus Heiser
e0c99d9dcb
bugfix: fetch_supported_languages bing, -news, -videos, -images
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 08:01:36 +01:00
Markus Heiser
c89c05bceb
bugfix: google-news and bing-news has changed the language parameter
...
closes: https://github.com/asciimoo/searx/issues/1838
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-25 18:44:28 +01:00
piplongrun
f0684a5bb5
Add eTools engine
2020-02-12 23:58:50 +01:00
Noémi Ványi
99435381a8
[enh] introduce private engines
...
This PR adds a new setting to engines named `tokens`.
It expects a list of tokens which lets searx validate
if the request should be accepted or not.
2020-02-08 11:47:39 +01:00
frankdelange
db9d7d47bd
Fix double-encode error ( fixes #1799 )
2020-01-07 21:41:43 +01:00
Adam Tauber
17b6faa4c3
[fix] pep8
2020-01-02 22:38:12 +01:00
Adam Tauber
ad5bb994b1
[fix] add py3 compatibility
2020-01-02 22:30:18 +01:00
Adam Tauber
1e6253ce16
[fix] handle empty response
2020-01-02 22:29:55 +01:00
Adam Tauber
86a378bd01
[fix] handle missing thumbnail
2020-01-02 22:29:28 +01:00
Adam Tauber
2dc2e1e8f9
[fix] skip invalid encoded attributes
2020-01-02 22:29:10 +01:00
Adam Tauber
2292e6e130
[fix] handle missing result size
2020-01-02 22:28:47 +01:00
Markus Heiser
36e72a4619
Merge branch 'master' into fix-engine-spotify
2019-12-29 09:47:06 +01:00
Marc Abonce Seguin
5706c12fba
remove empty parenthesis in wikipedia's summary
...
They're usually IPA pronunciations which are removed
by the API.
2019-12-21 22:47:08 -06:00
Marc Abonce Seguin
c18048e045
exclude disambiguation pages from wikipedia infobox
2019-12-21 22:47:08 -06:00
Adam Tauber
34ad3d6b34
[enh] display error message if gigablast extra param expired
2019-12-21 21:25:50 +01:00
Adam Tauber
fc457569f7
[fix] pep8
2019-12-21 21:13:43 +01:00
Adam Tauber
00512e36c1
[fix] handle empty response from wikipedia engine - closes #1114
2019-12-21 21:01:08 +01:00
Adam Tauber
f8713512be
[fix] convert byte query to string in osm engine - fixes #1220
2019-12-21 20:56:38 +01:00
Adam Tauber
e5305f886c
[fix] fetch extra search param of gigablast - fixes #1293
2019-12-21 20:51:30 +01:00
Adam Tauber
8850036ded
[fix] add explicit useragent header to requests - closes #1459
2019-12-21 20:25:39 +01:00
Marc Abonce Seguin
ccaf6ca02c
[fix] update xpaths for new google results page
2019-12-07 16:37:24 -07:00
Adam Tauber
731e34299d
Merge pull request #1744 from dalf/optimizations
...
[mod] speed optimization
2019-12-02 13:39:58 +00:00
Adam Tauber
574cb25a16
Merge pull request #1758 from return42/ddd-fix
...
[fix] duckduckgo_definitions
2019-12-02 13:38:54 +00:00
Markus Heiser
30ad0c666d
duckduckgo_definitions: remove the debug message
...
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-12-02 14:26:11 +01:00
Adam Tauber
20da8f2cbf
Merge pull request #1754 from MarcAbonce/seedpeer
...
Add Seedpeer again
2019-12-02 13:09:09 +00:00
Markus Heiser
b6d9f5aa71
[fix] duckduckgo_definition issues reported by 'manage.sh test'
...
Fix this error while travis build::
/home/travis/build/asciimoo/searx/searx/engines/duckduckgo_definitions.py:21:44: E225 missing whitespace around operator
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-11-29 19:59:35 +01:00
Markus Heiser
4998e9ec85
[fix] duckduckgo_definitions - where 'AnswerType' is 'calc'
...
Do not try to get text when 'AnswerType' is 'calc'.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-11-29 19:20:14 +01:00
Markus Heiser
2aa95c16e3
[fix] soundcloud: URLs of JS sources has been moved
...
The client_id is found under (new) URL:
https://a-v2.sndcdn.com/assets/49-a0c01933-3.js
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-11-29 15:05:36 +01:00
Adam Tauber
789d71350d
Merge pull request #1745 from lorddavidiii/python3.8-fix
...
Fix python 3.8 compatibility
2019-11-28 19:31:59 +00:00
Adam Tauber
05033ea8d8
Merge pull request #1689 from MarcAbonce/images_fixes
...
[fix] Google Images
2019-11-26 13:20:19 +00:00
Marc Abonce Seguin
9299355570
add seedpeer again
2019-11-24 22:01:44 -07:00
Emilien Devos
8f51430f5c
[fix] Force Google old UI with a new user agent
2019-11-22 23:01:41 +01:00
lorddavidiii
5e5ff0cbf8
webapp.py: use html.escape if cgi.escape is not available
...
- cgi.escape was removed in python 3.8
- also use html.escape in framalibre.py
2019-11-16 21:58:25 +01:00
Dalf
85b3723345
[mod] speed optimization
...
compile XPath only once
avoid redundant call to urlparse
get_locale(webapp.py): avoid useless call to request.accept_languages.best_match
2019-11-15 09:33:15 +01:00
Noémi Ványi
5796dc60c9
fix pep 8 check
2019-10-16 15:52:48 +02:00
Noémi Ványi
a6f20caf32
add initial support for offline engines && command engine
2019-10-16 15:52:48 +02:00
Adam Tauber
7d8fd4b95e
[fix] pep8
2019-10-16 15:32:03 +02:00
Adam Tauber
bbe4442a86
[fix] update gigablast engine
2019-10-16 15:27:37 +02:00
Adam Tauber
1057e42cfd
[fix] update digg engine
2019-10-16 15:11:42 +02:00
Adam Tauber
7177c9e12f
[fix] update devianart engine
2019-10-16 14:42:31 +02:00
Adam Tauber
6ca1622378
[fix] update 1x engine
2019-10-16 13:27:05 +02:00
Adam Tauber
c98a2df36d
[fix] enable paging support for arxiv engine
2019-10-16 13:12:17 +02:00
Adam Tauber
ed1c1bdb04
[fix] pep8
2019-10-14 15:09:39 +02:00
Adam Tauber
77a70fe541
[fix] update startpage engine - closes #1601
2019-10-14 14:18:41 +02:00
Adam Tauber
94ea9d6622
[fix] duckduckgo paging - closes #1677
2019-10-14 13:52:15 +02:00
Marc Abonce Seguin
bb4d223770
[fix] google images
2019-08-26 21:54:01 -07:00
Léo Bourrel
88261e111c
Fix bing engine results count ( #1387 )
...
This PR fixes the result count from bing which was throwing an (hidden) error and add a validation to avoid reading more results than avalaible.
For example :
If there is 100 results from some search and we try to get results from 120 to 130, Bing will send back the results from 0 to 10 and no error. If we compare results count with the first parameter of the request we can avoid this "invalid" results.
2019-08-05 16:15:40 +02:00
Dalf
1cee2c1796
[fix] bing engine
...
before this commit, sometimes there are no results
use a generic user-agent instead of one with the OS "Windows NT 6.3; WOW64"
2019-08-05 15:46:40 +02:00
Dalf
fcc9587ee9
[fix] fdroid engine
2019-08-05 15:44:02 +02:00
Dalf
fbf6b689dd
[fix] dictzone engine
2019-08-05 15:43:21 +02:00
Dalf
9ff5001816
[fix] arxiv engine
2019-08-05 15:43:01 +02:00
Alexandre Flament
2179079a91
[fix] fix flickr_noapi decoding ( #1655 )
...
Characters that were not ASCII were incorrectly decoded.
Add an helper function: searx.utils.ecma_unescape (Python implementation of unescape Javascript function).
2019-08-02 13:37:13 +02:00
cy8aer
4dc792e1e2
[enh] add invidious engine. ( #1657 )
...
closes #1372
2019-08-02 13:25:25 +02:00
0xhtml
b2e1ee8d35
Fix some more errors with none/wrong credentials
2019-07-31 21:09:02 +02:00
0xhtml
275b37cc7c
Fix error if the user hasn't set api credentials
2019-07-31 21:01:24 +02:00
0xhtml
c329ea135e
Fix spotify engine
2019-07-31 20:44:41 +02:00
Dalf
0c032c8429
[fix] youtube_noapi engine: fix the title
2019-07-31 08:39:40 +02:00
Dalf
8b7ac56669
[fix] google_videos engine: some results don't a thumbnail
2019-07-31 08:38:45 +02:00
Dalf
d44677e226
[fix] dailymotion engine: remove HTML tags from the description
2019-07-31 08:37:51 +02:00
Dalf
6e0285b2db
[fix] wikidata engine: faster processing, remove one HTTP redirection.
...
* Search URL is https://www.wikidata.org/w/index.php?{query}&ns0=1 (with ns0=1 at the end to avoid an HTTP redirection)
* url_detail: remove the disabletidy=1 deprecated parameter
* Add eval_xpath function: compile once for all xpath.
* Add get_id_cache: retrieve all HTML with an id, avoid the slow to procress dynamic xpath '//div[@id="{propertyid}"]'.replace('{propertyid}')
* Create an etree.HTMLParser() instead of using the global one (see #1575 )
2019-07-29 07:39:39 +02:00
Frank de Lange
cbc5e13275
[enh] flickr_noapi: use complete JSON data block, add 'content', 'img_format', 'source', etc. ( #1571 )
...
Fetch complete JSON data block, use legend to extract images.
Unquote urlencoded strings.
Add image description as 'content'.
Add 'img_format' and 'source' data (needs PR #1567 to enable this data to be displayed).
Show images which lack ownerid instead of discarding them.
2019-07-28 10:42:00 +02:00
Frank de Lange
204a2cbbf0
[fix] bing_videos ( #1579 )
...
use JSON where possible, compose 'content' using all available data, use correct 'url' (direct to source instead of redirect through bing)
2019-07-27 17:49:30 +02:00
Dalf
23611897ec
[fix] make sure then engine name is lower case
...
Minor fix: "%s engine initialized" display the right engine name
2019-07-27 08:52:30 +02:00
Frank de Lange
11fc9913e9
[enh] bing_images: use data from embedded JSON to improve results (e.g. real page title) ( #1568 )
...
use data from embedded JSON to improve results (e.g. real page title), add image format and source info (see PR #1567 ), improve paging logic (it now works)
2019-07-27 08:22:02 +02:00
Alexandre Flament
f34b5cedb1
[fix] fixes google play engines ( #1651 )
...
update commit 87baa74a86
2019-07-25 09:31:47 +02:00
volth
eb182df132
[mod] restore btdigg engine as btdig.com ( #1515 )
2019-07-25 08:40:48 +02:00
rachmadani haryono
3b1122c5fa
[fix] fix duden engine ( #1594 )
2019-07-25 08:17:45 +02:00
Venca24
87baa74a86
[fix] fixes google play engines and adds thumbnails to their results ( #1612 )
...
fix google play apps, google play apps, google play music engines
xpath engine: thumbnail_xpath can define an optional thumbnail
2019-07-25 07:46:41 +02:00
Dalf
da0ce5880f
[fix] fix soundcloud engine, speed up searx start time
2019-07-19 08:59:11 +02:00
Dalf
45702b77ca
embedded iframe (youtube, dailymotion, vimeo): use https
2019-07-13 15:49:59 +02:00
Emilien Devos
cbd1ebdce8
[fix] Force Google old UI ( #1597 )
2019-05-29 10:05:57 +09:00
Frank de Lange
4b7332286a
Use string formatter to create source and img_format labels ( #1566 )
...
google_images : use JSON embedded in HTML (engine expected pure JSON)
2019-05-28 12:33:31 +09:00
Dalf
ffe0972f91
Remove some engines : subtitleseeker, seedpeer, swisscows
...
http://www.subtitleseeker.com and http://www.seedpeer.eu don't exist anymore.
https://swisscows.ch/ has change : the engine needs to be updated
2019-05-28 04:06:35 +02:00
Alexandre Flament
df2b9a76f7
Merge branch 'master' into ne/fix-google-image-search
2019-04-14 13:55:00 +02:00
Nick Espig
1c6ab79b9f
Fix google image search
...
- Because there is not full image url in the dom, we replace "image_url" with the same url as the "url" (url of source).
See example HTML https://gist.github.com/Nachtalb/2dea8a4d2c723c49226ad9645838121f
- Remove unused import
- Fix google image search title
- Keep google image safe value up to date
2019-04-14 12:03:25 +02:00
Marc Abonce Seguin
3e1c2153f7
[fix] duckduckgo images requests
2019-04-13 00:38:37 -05:00
Marc Abonce Seguin
f2d49a6971
[fix] get youtube results from js object
...
Results are not appearing in the html document anymore,
instead they are found inside an object embedded in a script.
2019-03-26 21:09:15 -06:00
Jonas Zohren
f7bdd827c4
[enh] adds apkmirror search engine
2019-02-13 00:37:29 +01:00
Léo Bourrel
bf4a38ad66
Remove asksteem
2019-01-28 11:02:43 +01:00
d-tux
f1814079f0
Merge branch 'master' into engines/unsplash
2019-01-14 13:40:57 +01:00
Marc Abonce Seguin
626a8e9ac9
[fix] unicode error with WolframAlpha API engine
2019-01-08 21:02:23 -06:00
d-tux
329172f66e
Merge branch 'master' into engines/unsplash
2019-01-08 09:24:45 +01:00
Noémi Ványi
97351a2c72
fix after rebase
2019-01-07 21:28:58 +01:00
Noémi Ványi
b63d645a52
Revert "remove 'all' option from search languages"
...
This reverts commit 4d1770398a
.
2019-01-07 21:19:00 +01:00
Marc Abonce Seguin
0169b63e84
[fix] fetch google's supported languages
2019-01-06 21:31:45 -06:00
Marc Abonce Seguin
51111c2594
[fix] always set langauge_aliases even if it's empty
2019-01-06 20:49:56 -06:00
Marc Abonce Seguin
5568f24d6c
[fix] check language aliases when setting search language
2019-01-06 20:31:57 -06:00
Venca24
2456b8f571
[mod] google videos
2019-01-05 12:12:09 +01:00
Noémi Ványi
1ea56576dc
Merge branch 'master' into devel_google_videos
2019-01-04 22:27:05 +01:00
Noémi Ványi
aeb6dab187
Merge branch 'master' into master
2019-01-04 22:14:40 +01:00
Noémi Ványi
5b81f7c2cc
Merge branch 'master' into bugfix_startpage
2019-01-04 22:03:00 +01:00
Venca24
cf26aba93b
[FIX] google videos thumbnails
2019-01-04 15:48:22 +01:00
Léo Bourrel
73ec2ba74e
Update bing image engine with new image json format
2018-12-19 11:12:25 +01:00
Michael Pfitzner
44ce51f0c5
restore startpage search results
2018-12-14 21:38:48 +01:00
d-tux
4a127b19de
Merge branch 'master' into engines/unsplash
2018-12-14 07:06:19 +01:00
dimqua
0d86ed9c7e
update startpage.py
2018-12-11 21:45:47 +03:00
dimqua
442772a6c5
remove findx engine ( #1452 )
2018-12-02 22:39:04 +01:00
Venca24
0bdf090ed7
[fix] google videos engine
2018-11-22 13:00:34 +01:00
Denis Wernert
b9ada93b3a
Removes what looks like tracking parameters
2018-10-08 14:56:20 +02:00
Denis Wernert
72d063d27d
Uses the raw url for the image result, rather than the full
...
size result.
2018-10-08 14:01:35 +02:00
Denis Wernert
cd7849ffc8
Adds the Unsplash image engine
2018-10-08 09:18:42 +02:00
Adam Tauber
052a71d05a
Merge pull request #1368 from aliceinwire/gentoo_engine
...
Add Gentoo wiki search engine
2018-08-21 16:24:34 +02:00
Alice Ferrazzi
d24c58cf4e
Fix pep8 errors
2018-08-21 22:55:51 +09:00
Alice Ferrazzi
ff2eac9f6b
Fix choosing languges function
...
Searching for english is now giving all pages results.
Instead searching for a specific language different from english
is correctly returning only translated pages for the selected language.
2018-08-21 22:55:39 +09:00
Adam Tauber
baacfac32b
[fix] remove publicly unavailable 500px engine - #1338
2018-08-19 15:06:59 +02:00
dadosch
b575f898c0
duden.de engine
2018-08-18 19:24:02 +02:00
Adam Tauber
845ba79e75
[fix] update qwant search url
...
thx to @dalf for the fix (#1365 )
2018-08-13 12:38:19 +02:00
Alice Ferrazzi
5f0888b8f4
added languages to Gentoo engine
2018-08-12 23:00:57 +09:00
Alice Ferrazzi
b7886bb15c
gentoo engine test
2018-08-12 23:00:57 +09:00
Adam Tauber
d51732c0e5
Merge pull request #1303 from MarcAbonce/bing
...
Fix bing "garbage" results
2018-07-09 11:00:37 +02:00
Léo Bourrel
7a474db61b
Fix formatting
2018-07-06 10:31:01 +02:00
Léo Bourrel
acaef6600e
Update path to wikidata image
2018-07-05 10:11:45 +02:00
Adam Tauber
f82ead3e30
[fix] add py3 compatibility to base engine - closes #1319
2018-06-14 11:50:03 +02:00
Adam Tauber
57e7e9da98
[fix] use html result page in google images (previous endpoint stopped working)
2018-06-14 11:40:39 +02:00
Noémi Ványi
16915116e0
fix piratebay url
...
Closes #1229
2018-05-21 16:58:39 +02:00
Marc Abonce Seguin
75b276f408
fix bing "garbage" results (issue #1275 )
2018-05-20 18:13:32 -05:00
Noémi Ványi
b843c1351a
add missing parameter to gigablast search url
...
Closes #1293
2018-05-16 22:26:32 +02:00
rinpatch
059c2ccb95
Fix acgsou encoding error on python2 and add unicode characters to unit testt
2018-05-05 23:41:13 +03:00
rinpatch
3b89ce9bfa
Switch acgsou to http
2018-05-03 08:34:21 +03:00
Adam Tauber
1a1f9852f1
Merge pull request #1283 from rinpatch/acgsou-engine
...
[Feature] Acgsou as a searchable engine
2018-04-28 22:42:35 +02:00
rinpatch
f6695cea59
Fix nyaa to use https
2018-04-27 17:55:42 +03:00
rinpatch
f17e54a396
Forgot to remove print command used for debugging
2018-04-27 15:40:42 +03:00
rinpatch
dcc9fdb47f
Added unit test
2018-04-27 15:36:15 +03:00
rinpatch
e3bd2670d7
Traling whitespace
2018-04-27 08:36:11 +03:00
rinpatch
86f47689fe
Hopefully fix code style errors(again)(again)
2018-04-27 08:32:43 +03:00
rinpatch
b8b23d8006
Hopefully fix code style errors(again)
2018-04-27 08:29:17 +03:00
rinpatch
fb364ffae7
Hopefully fix code style errors
2018-04-27 08:23:58 +03:00
rinpatch
3ec35a06f7
Added Engine
2018-04-26 22:42:31 +03:00
rinpatch
cd1374d2f2
added whitespaces
2018-04-22 14:12:32 +03:00
rinpatch
a305dae9d8
switched currency convert to duckduckgo and added Bitcoin to currency list
2018-04-22 13:46:13 +03:00
Noémi Ványi
25b48143ea
fix findx engine
2018-04-21 20:02:52 +02:00
Marc Abonce Seguin
f7f9c50393
[fix] force English results in Google when using en-US
2018-04-18 23:29:48 -05:00
Marc Abonce Seguin
b12857a70d
[fix] make search requests on wikidata more accurate
2018-04-08 21:17:00 -05:00
Marc Abonce Seguin
835d1edd58
[fix] google news xpath
2018-04-08 20:56:05 -05:00
Marc Abonce Seguin
343e555ee9
[fix] append http if no scheme is provided in xpath's extact_url
...
This solves a bug with Yahoo where some results don't specify
a protocol.
2018-04-08 20:35:34 -05:00
Adam Tauber
283f6c9053
Merge pull request #1252 from MarcAbonce/search-languages
...
[mod] Refactor engine's search language handling
2018-04-05 17:27:07 +02:00
Marc Abonce Seguin
772c048d01
refactor engine's search language handling
...
Add match_language function in utils to match any user given
language code with a list of engine's supported languages.
Also add language_aliases dict on each engine to translate
standard language codes into the custom codes used by the engine.
2018-03-27 00:08:03 -06:00
Noémi Ványi
8cc529e9a3
forward category to engine without highlighting on the ui
2018-03-22 11:02:24 +01:00
Noémi Ványi
d04e471ce5
add findx engine for general, images and videos
2018-03-22 10:02:37 +01:00
Marc Abonce Seguin
d1eae9359f
fix fetch_langauges to be more accurate
...
Add languages supported by either all default general engines or 10 engines.
2018-03-20 17:58:20 -06:00
Marc Abonce Seguin
216716db70
[fix] change duckduckgo url to avoid error response
2018-03-14 23:18:42 -06:00
Adam Tauber
03d7a8f065
[fix] pep8
2018-02-18 23:24:59 +01:00
Adam Tauber
b4c657d227
[enh] add asksteem engine - closes #1163
2018-02-18 22:42:32 +01:00
Noémi Ványi
988cf38196
fix Microsoft Academic engine
2018-02-17 21:39:49 +01:00
Adam Tauber
2f69eaeb2f
[fix] fix engine initialization
2018-02-17 14:30:06 +01:00
Noémi Ványi
c645915171
fix bing videos engine
2018-02-10 19:44:07 +01:00
Marc Abonce Seguin
829032f306
[fix] read utf-8 files (settings, languages, currency) with python3.5
...
Related to discussion in #1124
The io.open import is necessary for python2
2018-01-16 23:26:10 -06:00
Adam Tauber
8511e64f35
Merge pull request #1124 from JosephKiranBabu/python3-unicode-support
...
Make Python 3 able to read settings files with Unicode characters
2018-01-12 10:58:23 +01:00
Noémi Ványi
f3aa5ea47d
fix yacy result url
...
Closes #1064
2018-01-06 14:52:14 +01:00
Joseph Nuthalapati
bdc803e185
Make Python 3 able to read settings files with Unicode characters
...
SearX currently doesn't start up when run with Python 3 as it tries to parse the
settings.yml file with ASCII codecs.
There are similar problems with engines_languages.json and currencies.json
Python 3 requires that files with Unicode characters be read with a 'b' flag.
This also works with Python 2 and hence can be integrated into the main source
code.
Tested with the latest Python 3.6.4rc1 on Debian unstable.
Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
2017-12-21 17:33:19 +05:30
Noémi Ványi
2d5eed9b59
send constant cookie with query to Google
2017-12-18 21:38:52 +01:00
Adam Tauber
7752b0a807
[fix] gigablast url parameter change - fixes #1107
2017-12-09 21:00:08 +01:00
marc
4d1770398a
remove 'all' option from search languages
2017-12-06 01:20:15 -06:00
Adam Tauber
1613c6319e
[fix] handle /sorry redirects
2017-12-05 20:38:34 +01:00
Adam Tauber
1088c2a75d
[fix] do not crash if publication date is missing in pubmed engine
2017-12-01 20:54:12 +01:00
Adam Tauber
801b5a56ad
[fix] multiple fixes in pdbe engine
2017-12-01 20:54:12 +01:00
Adam Tauber
0969e50c5b
[fix] convert json engine result attributes to string - closes #1006
2017-12-01 20:54:12 +01:00
Adam Tauber
6eb9503896
[fix] use english in google engine if no language was set - this prevents guessing the language by the IP of the instance
2017-11-22 22:56:47 +01:00
Adam Tauber
6fdb6640d9
[fix] revert language changes to prevent CAPTCHAs
2017-11-22 22:50:48 +01:00
Adam Tauber
9ab8536479
[fix] fix language support of google
2017-11-21 16:28:53 +01:00
pyrrh0n1c
4340c0b16c
Fixed typos.
2017-11-07 14:14:20 +00:00
pyrrh0n1c
2231b02add
Fixed the currency_convert engine.
2017-11-07 13:29:17 +00:00
Adam Tauber
00a7041daa
Merge pull request #1068 from Apply55gx/genius
...
Continuation of PR #1004 (seems abandoned)
2017-11-03 20:21:25 +01:00
Adam Tauber
7a9b18e9e9
[mod] add more error handling to json engine II.
2017-11-02 01:08:15 +01:00
Adam Tauber
181f1c6305
[mod] add more error handling to json engine
2017-11-02 00:43:29 +01:00
Noémi Ványi
5954a8e16a
minor fix of BASE engine
2017-11-01 17:02:38 +01:00
Noémi Ványi
d20bba6dc7
minor fixes of pubmed engine
...
Closes #1045
2017-11-01 17:02:38 +01:00
jibe-b
df0d915806
[add] pubmed engine
2017-11-01 17:02:38 +01:00
Noémi Ványi
9c2b7a82f0
minor fixes of arxiv
...
Closes #1050
2017-11-01 14:22:22 +01:00
jibe-b
e391b2d970
[fix] remove .encode for python3 compatibility
2017-11-01 11:54:55 +01:00
jibe-b
5278fa666c
[enh] use format to concatenate strings
2017-11-01 11:54:38 +01:00
jibe-b
3e3672e079
[add] arxiv engine
2017-11-01 11:54:16 +01:00
Apply55gx
d800e3fcfa
Merge pull request #1 from asciimoo/master
...
-
2017-10-25 10:44:28 +02:00
Apply55gx
18a4e7035f
removed unused indicies array
2017-10-25 10:42:37 +02:00
marc
44085e31d0
update engines_languages.json and languages.py
...
Also, fix fetch_languages.py so it can run on python3.
2017-10-10 16:53:28 -05:00
marc
a524dbb823
[fix] language support for bing images and videos
2017-10-10 16:49:49 -05:00
misnyo
33fd938016
[mod] int_or_zero refactored to searx_utils
2017-09-04 20:05:04 +02:00
misnyo
c3232b0e1a
Merge branch 'master' into nyaa
2017-09-04 17:48:25 +02:00
Adam Tauber
234366b900
Merge pull request #1018 from misnyo/generalfile
...
[mod]generalfile engine removed
2017-09-03 23:09:49 +02:00
Adam Tauber
c505c3c1ca
Merge pull request #1019 from misnyo/gigablast
...
[fix] gigablast api fix
2017-09-03 23:09:33 +02:00
misnyo
b91772eff1
[fix] gigablast pep8 fix
2017-08-31 21:49:19 +02:00
misnyo
01330f71cd
[fix] nyaa.si fixed
2017-08-31 21:32:30 +02:00
misnyo
1e2b60f380
[mod] tokyotoshokan dependecy to other engine removed
2017-08-31 21:31:40 +02:00
misnyo
3182ba7069
[fix] google news dom xpath fix
2017-08-31 17:48:07 +02:00
misnyo
8849606e5f
[fix] gigablast api fix
2017-08-31 16:57:57 +02:00
misnyo
2d66df0548
[mod]generalfile engine removed
2017-08-31 15:51:16 +02:00
Adam Tauber
e74aaa781e
Merge pull request #1016 from misnyo/blekko
...
[mod]blekko images removed
2017-08-30 21:48:36 +02:00
Adam Tauber
610117d054
Merge pull request #1015 from misnyo/digg
...
[fix] digg now requires cookie for search
2017-08-30 21:35:12 +02:00
misnyo
6e92fb383a
[fix] digg cookie characters created in module import
2017-08-30 21:14:12 +02:00
misnyo
20d2d4dab1
[fix] pep8 fix for faroo engine
2017-08-30 21:09:03 +02:00
misnyo
0607b167f8
[fix] faroo json api and image layout fixed
2017-08-30 21:09:03 +02:00
misnyo
a49cc18f9c
[fix] digg now requires cookie for search
2017-08-30 19:51:33 +02:00
misnyo
f139f9cfdb
[mod]blekko images removed
2017-08-30 16:47:56 +02:00
misnyo
d14e2781b2
[fix]torrentz search engine fixed for new version
2017-08-25 00:52:35 +02:00
woorst
2434c29dc5
New engine: Genius (lyrics)
2017-08-19 19:05:17 -05:00
marc
3ca9cad927
add bing videos engine
2017-08-05 20:35:57 -05:00
marc
856dfc3018
add google videos
2017-07-26 15:49:16 +02:00
Adam Tauber
077d8efed8
[fix] use poolrequests in ddg engines
2017-07-21 16:23:20 +02:00
Adam Tauber
0f6612bb40
[mod] separate engine load and initialization
2017-07-21 14:27:25 +02:00
Adam Tauber
1794f6a4d3
[enh] add "inactive" attribute to engines
...
This modification allows us to deactivate engines in settings.yml
without commenting them out
2017-07-20 13:32:20 +02:00
marc
405e5c8f24
[fix] duckduckgo images doesn't fail with countryless language
2017-07-10 18:41:50 +02:00
potato
9b82cb1908
[fix] is_valid_lang fixed for new languages.py + dictzone engine encoding
2017-06-25 18:29:19 +02:00
vache asatryan
5835ebf955
fix github url
2017-06-18 21:53:10 +04:00
Noémi Ványi
c361811cb5
[fix] fix xpath of google images
2017-06-13 19:47:56 +02:00
Adam Tauber
343ac7197d
[fix] pep8
2017-06-06 23:37:42 +02:00
Adam Tauber
78365ffb8a
[enh] add init function to engines which loads parallel
2017-06-06 22:20:20 +02:00
marc
3b950929b1
[fix] fix duckduckgo's offset
...
First page now starts with 0 offset,
rather than starting on the 30th result.
DuckDuckGo returns 30 results on each page.
2017-05-27 21:12:39 -05:00
marc
c65a409f0d
add duckduckgo images engine
2017-05-23 20:07:09 +02:00
Adam Tauber
1972a044a3
[fix] produce valid urls if scheme is missing
2017-05-22 15:48:37 +02:00
Adam Tauber
8db527c1d2
[fix] use raw response with etree.parsefromstring - Unicode strings with encoding declaration are not supported
2017-05-22 15:36:52 +02:00
Adam Tauber
a4f7046b8f
[fix] pep8
2017-05-18 22:19:44 +02:00
Noémi Ványi
2a9339f4b7
[fix] add more description on possible search tpyes
2017-05-18 22:04:31 +02:00
Noémi Ványi
2db807368c
[enh] make search type of mediawiki configurable
2017-05-18 21:34:54 +02:00
marc
9ee8e552da
[fix] bing images
2017-05-17 15:45:55 +02:00
Dalf
c233bf0df9
[fix] framalibre : remove result['thumbnail'] (not used)
2017-05-15 17:28:21 +02:00
Alexandre Flament
f5128c7cb9
[mod] add/modify image fetching for bing_news, qwant and twitter engines
2017-05-15 17:28:21 +02:00
Adam Tauber
52e615dede
[enh] py3 compatibility
2017-05-15 12:02:30 +02:00
Adam Tauber
46a2c63f8e
[fix] yahoo news date parsing
2017-04-08 19:45:04 +02:00
Alexandre Flament
12d91c1d67
[mod] searx doesn't crash at startup when an engine can't be loaded (see #884 )
2017-04-08 17:38:46 +02:00
François Revol
45d15bd6f0
Add framalibre engine
...
framalibre.org is a catalogue of Free Software, edited by Framasoft.
For now we pass the thumbnail as img_src as it doesn't seem to be used
for IT...
2017-03-22 00:18:23 +01:00
marc
fd65c12921
make search language handling less strict
...
languages.py can change, so users may query on a language that is not
on the list anymore, even if it is still recognized by a few engines.
also made no and nb the same because they seem to return the same,
though most engines will only support one or the other.
2017-03-18 23:44:21 +01:00
marc
805fb02ed1
add language support for qwant
...
closes issue #863
2017-03-18 23:44:21 +01:00
Noémi Ványi
742e4dfdcc
[fix] fix paging of duckduckgo
2017-02-01 20:54:13 +01:00
Adam Tauber
52d1087202
[enh] add result number parsing to google engine
2017-01-27 00:18:46 +01:00
Adam Tauber
57149661e4
Merge pull request #830 from davidar/se
...
Semantic Scholar
2017-01-18 23:50:11 +01:00
Adam Tauber
b1d49bacb0
Merge pull request #827 from davidar/spell
...
[enh] show spelling corrections
2017-01-18 23:49:01 +01:00
David A Roberts
7492997c51
[fix] allow empty content
2017-01-17 21:14:33 +10:00
David A Roberts
1d30141c20
[enh] show spelling corrections
2017-01-16 13:31:16 +10:00
jcherqui
39a97825d9
Add torrent infos
2017-01-15 16:13:23 +01:00
jcherqui
4776abd1ac
Remove categories
2017-01-15 16:13:23 +01:00
jcherqui
a320328dda
Fix test
2017-01-15 16:13:23 +01:00
jcherqui
0549fb40d2
Add 1337x.to engine
2017-01-15 16:13:23 +01:00
Adam Tauber
108392f8da
[fix] skip non-complete google news results
2017-01-10 11:03:05 +01:00
Adam Tauber
0d4da30c7f
[enh] add instant answers to google engine
2017-01-05 17:20:12 +01:00
Adam Tauber
525e5d275c
Merge pull request #801 from dalf/extract_text
...
[fix] extract_text: use html.tostring instead html_to_text.
2017-01-02 12:36:50 +01:00
Alexandre Flament
90e1db3e5c
[fix] extract_text: use html.tostring instead html_to_text. Fix #711
2016-12-31 13:56:09 +01:00
Adam Tauber
6bf9c398a7
[fix] use english as default language in bing
...
If no language is specified, bing returns results with multiple languages
for one query which isn't really useful. Setting english as default
insted if nothing.
2016-12-30 18:17:14 +01:00
marc
1175b3906f
change language list to only include languages with a minimum of engines
...
that support them.
users can still query lesser supported through the :lang_code bang.
2016-12-29 01:55:30 -06:00
Adam Tauber
8bff42f049
Merge branch 'master' into languages
2016-12-28 20:00:53 +01:00
Adam Tauber
ea034fafa9
[fix] proper engine init
2016-12-27 17:55:44 +01:00
Adam Tauber
a605377c40
[enh] explicit engine init
2016-12-27 17:31:14 +01:00
Adam Tauber
b6fc154616
[enh] add searx engine
2016-12-24 22:23:36 +01:00
Adam Tauber
0171db5c3f
[fix] handle missing images in google news
2016-12-23 12:59:52 +01:00
marc
7fba3d1179
Merge branch 'master' into languages
2016-12-16 22:14:36 -06:00
marc
4a1ff56389
minor fixes in utils/fetch_languages.py
2016-12-16 22:14:14 -06:00
Adam Tauber
19cd2bf3b5
[fix] re-enable ssl verification for searchcode
...
closes #784
2016-12-16 15:21:27 +01:00
marc
af35eee10b
tests for _fetch_supported_languages in engines
...
and refactor method to make it testable without making requests
2016-12-15 00:40:21 -06:00
marc
e0c270bd72
tests for language support in engines
2016-12-13 23:51:15 -06:00
marc
f62ce21f50
[mod] fetch supported languages for several engines
...
utils/fetch_languages.py gets languages supported by each engine and
generates engines_languages.json with each engine's supported language.
2016-12-13 19:58:10 -06:00
marc
92c6e88ad3
small fixes
2016-12-13 19:56:59 -06:00
marc
a11948c71b
Add language support for more engines.
2016-12-13 19:32:43 -06:00
marc
c677aee58a
filter langauges
2016-12-13 19:32:00 -06:00
marc
149802c569
[enh] add supported_languages on engines and auto-generate languages.py
2016-12-13 19:32:00 -06:00
Noémi Ványi
b034356825
add year filter to engines with time range support && tests
...
Following engines does not support "Last year":
* Bing News
* DeviantArt
* DuckDuckGo
* Yahoo
* YouTube (noapi)
2016-12-11 16:58:31 +01:00
Noémi Ványi
c59c76e6ee
add year to time range to engines which support "Last year"
...
Engines:
* Bing images
* Flickr (noapi)
* Google
* Google Images
* Google News
2016-12-11 16:58:31 +01:00
Thomas Renard
16c40ffefd
htmlize yacy contents
2016-12-11 14:05:07 +01:00
Noémi Ványi
553f3a3a1a
fix xpath of yandex
2016-12-11 11:58:49 +01:00
Adam Tauber
4676e1dcde
[fix] remove result escaping from engine
2016-12-11 03:24:26 +01:00
Adam Tauber
1a82ed6f54
[mod] 500px rewrite
2016-12-11 03:22:42 +01:00
Adam Tauber
f6e9c074bb
[fix] vimeo engine change follow-up
2016-12-11 02:33:04 +01:00
Adam Tauber
a2c94895c1
[fix] google news engine change follow-up
2016-12-11 01:03:52 +01:00
Adam Tauber
c3dcebb778
[fix] remove html tags from qwant results
2016-12-10 21:31:05 +01:00
Adam Tauber
e12a137a2f
[fix] unicode response in deezer and spotify
2016-12-10 00:30:34 +01:00
Alexandre Flament
e48f07a367
Merge branch 'master' into searchpy2
2016-12-09 23:11:45 +01:00
Adam Tauber
72a217f983
[mod] return empty string on missing osm title
...
Sometimes openstreetmap returns with None as title. In these cases use an empty
string instead.
2016-12-09 19:53:54 +01:00
Adam Tauber
fdf63940e8
[fix] tests ++ flickr error
2016-12-09 19:11:22 +01:00
Adam Tauber
16bdc0baf4
[mod] do not escape html content in engines
2016-12-09 18:59:19 +01:00
Adam Tauber
55dc538398
[mod] move load_module function to utils
2016-11-19 17:51:19 +01:00
Adam Tauber
43ddbc60da
[fix] pep8
2016-11-14 16:09:16 +01:00
Adam Tauber
16f2e346b3
[fix] bing unicode issue part III.
2016-11-14 15:52:29 +01:00
Adam Tauber
1176505fa4
[fix] bing character encoding - closes #760
2016-11-14 15:47:42 +01:00
Adam Tauber
17b08d096c
[fix] unicode search expression for bing
2016-11-07 22:33:17 +01:00
Adam Tauber
16ff8d06c7
[fix] bing paging and language support
...
see https://msdn.microsoft.com/en-us/library/ff795620.aspx for bing
specific search operators
closes #755
2016-11-07 22:30:20 +01:00
Alexandre Flament
01e2648e93
Simplify search.py, basically updated PR #518
...
The timeouts in settings.yml is about the total time (not only the HTTP request but also the prepare the request and parsing the response)
It was more or less the case before since the threaded_requests function ignores the thread after the timeout even the HTTP request is ended.
New / changed stats :
* page_load_time : record the HTTP request time
* page_load_count: the number of HTTP request
* engine_time : the execution total time of an engine
* engine_time_count : the number of "engine_time" measure
The avg response times in the preferences are the engine response time (engine_load_time / engine_load_count)
To sum up :
* Search.search() filters the engines that can't process the request
* Search.search() call search_multiple_requests function
* search_multiple_requests creates one thread per engine, each thread runs the search_one_request function
* search_one_request calls the request function, make the HTTP request, calls the response function, extends the result_container
* search_multiple_requests waits for the the thread to finish (or timeout)
2016-11-05 13:45:20 +01:00
Noémi Ványi
1490d6bc93
add time range search for flickr
2016-11-01 17:58:29 +01:00
Noémi Ványi
5c02b9ef31
add time range support for bing images
2016-11-01 17:58:29 +01:00
Noémi Ványi
d2e0cbafb2
add time range search for youtube noapi
2016-11-01 17:58:29 +01:00
Noémi Ványi
f70d405202
add time range search for bing news
2016-11-01 17:58:29 +01:00
Noémi Ványi
53c9fde992
fix kickass torrents engine
2016-10-22 05:27:18 +02:00
Alexander Minges
3c5883408c
initial commit of pdbe engine
...
Adds support for queries to the Protein Data Bank Europe (PDBe).
2016-10-13 00:40:38 +02:00
Pydo
55a5b686ed
Merge branch 'master' of https://github.com/asciimoo/searx into feature/seedpeer-engine-integration
...
Resolved conflict searx/settings.yml
2016-10-01 10:46:18 -04:00
Adam Tauber
86daef2063
[fix] do not allow underscore in engine names - closes #708
2016-09-28 22:30:05 +02:00
marc
d1d4ed4376
[fix] results with digbit don't truncate anymore
2016-09-20 16:11:33 -05:00
firebovine
e145fdb86d
#607 - noapi fix
2016-09-10 17:43:12 -04:00
Lorenzo J. Lucchini
a8907224a1
Improving Wolfram Alpha search hit content
...
Making WA search hits contain
- the (parsed) input inside the "title" instead of just "Wolfram|Alpha", to better match other hit titles and to confirm correct parsing of input to the user
- the first output field that contains any text (skipping ones that are only pictures; this is usually the most meaningful "result" field) instead of the raw input as the "content", making it additionally possible to obtain WA computations from JSON API calls
2016-09-10 17:42:19 -04:00
marc
09ee2aa69d
[fix] Result text in Wolfram|Alpha ( #607 )
2016-09-10 17:42:04 -04:00
Adam Tauber
3144ec1d59
[fix] unicode urls
2016-09-06 17:17:42 +02:00
potato
983415bc38
[enh] is_valid_lang moved to utils
2016-09-06 16:43:48 +02:00
potato
b7d578ae80
[enh] engine header comments
2016-09-06 16:36:04 +02:00
potato
8c72a22757
[enh] api_key usage, disable the engine by default
2016-09-06 16:12:34 +02:00
potato
c051e6a2c3
[fix] pep8
2016-09-06 15:44:05 +02:00
potato
ab471fd13b
[enh] mymemory translated engine added for multi-word translations
2016-09-06 15:40:07 +02:00
potato
22bd39fd42
[fix] only 1-word search triggers the engine
2016-09-06 15:07:47 +02:00
potato
7bf1013c15
[enh] removed missing params; [fix] pep8
2016-09-06 14:24:08 +02:00
potato
bc806bfab1
[fix] no lambda anymore, cgi.escape
2016-09-06 14:12:46 +02:00
potato
5416f0f248
[enh] dictionary engine renamed to dictzone
2016-09-06 12:50:56 +02:00
potato
84ff6e289e
[enh] filter non-existing language code/name containing requests
2016-09-06 12:46:18 +02:00
potato
b808a2e266
[fix] don't merge with suggestions
2016-09-06 12:37:26 +02:00
potato
3f4cc2146c
[enh] return results instead of answers
2016-09-06 12:34:20 +02:00
potato
f4525880ed
[enh] dictionary engine added
2016-09-06 11:47:27 +02:00
Pydo
2c2123b2e8
Added seepeer to config and added seepeer search parser
2016-09-05 14:51:02 -04:00
Adam Tauber
13bed1f872
Merge pull request #639 from kvch/digbt-engine
...
add digbt engine - fixes #638
2016-08-16 10:37:17 +02:00
David A Roberts
1e9dab08e6
[fix] behaviour for page_size>1 and first_page_num>0
...
eg. pageno=1,21,41,... instead of 20,40,60,...
2016-08-14 22:10:25 +10:00
Noemi Vanyi
3a1c5876b1
add digbt engine
...
Unfortunately, it is quite slow so it is disabled.
Furthermore, the display of number of files is wrong
on digbt.org, so it is not displayed on searx.
2016-08-13 16:19:00 +02:00
Adam Tauber
104cdb7d03
[fix] remove unused imports ++ int token timestamp by default
2016-08-13 01:13:41 +02:00
Adam Tauber
eb57481450
[fix] google images paging - closes #571
2016-08-13 01:13:41 +02:00
David A Roberts
61fe5daf30
Add Microsoft Academic search engine
2016-08-12 20:19:10 +10:00
Adam Tauber
31866d9f33
Merge pull request #629 from stepshal/E305
...
Add missing blank lines after class or function definition.
2016-08-11 13:33:59 +02:00