Commit Graph

18 Commits (d04e471ce53c5efd224a4ed0e7b5d88fb0d3a093)

Author SHA1 Message Date
marc 4d1770398a remove 'all' option from search languages 7 years ago
Zeph 02cb5602b4 [fix] autocompleter py3 compatibility - fixes #1088 7 years ago
Adam Tauber fe6e87a5a4 [fix] replace obsolete string.join function 7 years ago
Adam Tauber 52e615dede [enh] py3 compatibility 7 years ago
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.
7 years ago
Alexandre Flament 448903cd4a [fix] searching for "!google_images text" doesn't work (bang with underscore) 8 years ago
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.
8 years ago
marc 149802c569 [enh] add supported_languages on engines and auto-generate languages.py 8 years ago
dalf 67e11c42b9 Clean up the architecture
Purposes :
- isolate the plugins calls
- distinction between parsing the web request and running the search (Search class). To be able to test code easily, to run searx code outside a web server, to filter the search query parameters with plugins more easily, etc...

Details :
- request.request_data contains request.form or request.args (initialize inside pre_request() function)
- Query class is renamed RawTextQuery
- SearchQuery class defines all search parameters
- get_search_query_from_webapp create a SearchQuery instance (basically the previous Search.__init__ code)
- Search class and SearchWithPlugins class takes a SearchQuery instance as class constructor parameter
- SearchWithPlugins class inherites from Search class, and run plugins
- A dedicated function search_with_plugins executes plugins to have a well define locals() (which is used by the plugins code).
- All plugins code is executed inside the try...except block (webapp.py, index function)
- advanced_search HTTP parameter value stays in webapp.py (it is only part of UI)
- multiple calls to result_container.get_ordered_results() doesn't compute the order multiple time (note : this method was call only once before)
- paging value is stored in the result_container class (compute in the extend method)
- test about engine.suspend_end_time is done during search method call (instead of __init__)
- check that the format parameter value is one of these : html, rss, json, rss (before the html value was assumed but some text formatting wasn't not done)
8 years ago
Noemi Vanyi 8c4db08443 rename blocked engines to diabled engines 8 years ago
Adam Tauber 1de781a143 [enh] category specific engine deactivation - closes #205 10 years ago
Adam Tauber 78828efdb0 [enh] allow override of blocked engines from query string 10 years ago
Adam Tauber b47b8cc2c6 Merge pull request #166 from Cqoicebordel/non-exclusif-bang
Add non exclusif bang
10 years ago
Thomas Pointhuber 4e2dae30f0 [enh] add autocompletion for searx-specific strings 10 years ago
Cqoicebordel 96c4d52eef Add non exclusif bang
Allow to perform a search while adding an engine (or a category) without adding it "officially" to the request.
'?' is used to add an engine without modifying anything else to the request. For example, you can perform a search in the 'general' category, and if you add '?tw' the result from Twitter will be added to the originals results.
10 years ago
Adam Tauber 5740cfbf1c [fix] pep8 part II. 10 years ago
Thomas Pointhuber 62d1a70c84 using Query class for parsing of search query 10 years ago
Thomas Pointhuber 510aba5e66 implement query parser and use it inside autocompletion 10 years ago