This is page 2 of 2. Use http://codebase.md/yokingma/one-search-mcp?lines=true&page={x} to view the full context.
# Directory Structure
```
├── .gitignore
├── deploy
│ ├── docker-compose.yaml
│ ├── README.md
│ └── searxng
│ ├── settings.yml
│ └── uwsgi.ini
├── dist
│ ├── index.cjs
│ ├── index.cjs.map
│ ├── index.d.cts
│ ├── index.d.ts
│ ├── index.js
│ └── index.js.map
├── Dockerfile
├── eslint.config.mjs
├── LICENSE
├── package.json
├── README.md
├── smithery.yaml
├── src
│ ├── global.d.ts
│ ├── index.ts
│ ├── interface.ts
│ ├── libs
│ │ ├── browser
│ │ │ ├── base.ts
│ │ │ ├── finder.ts
│ │ │ ├── index.ts
│ │ │ ├── local.ts
│ │ │ ├── remote.ts
│ │ │ └── types.ts
│ │ └── browser-search
│ │ ├── engines
│ │ │ ├── baidu.ts
│ │ │ ├── bing.ts
│ │ │ ├── get.ts
│ │ │ ├── google.ts
│ │ │ ├── index.ts
│ │ │ └── sogou.ts
│ │ ├── index.ts
│ │ ├── queue.ts
│ │ ├── readability.ts
│ │ ├── search.ts
│ │ ├── types.ts
│ │ └── utils.ts
│ ├── search
│ │ ├── bing.ts
│ │ ├── duckduckgo.ts
│ │ ├── index.ts
│ │ ├── local.ts
│ │ ├── searxng.ts
│ │ └── tavily.ts
│ └── tools.ts
└── tsconfig.json
```
# Files
--------------------------------------------------------------------------------
/deploy/searxng/settings.yml:
--------------------------------------------------------------------------------
```yaml
1 | general:
2 | # Debug mode, only for development. Is overwritten by ${SEARXNG_DEBUG}
3 | debug: false
4 | # displayed name
5 | instance_name: "searxng"
6 | # For example: https://example.com/privacy
7 | privacypolicy_url: false
8 | # use true to use your own donation page written in searx/info/en/donate.md
9 | # use false to disable the donation link
10 | donation_url: false
11 | # mailto:[email protected]
12 | contact_url: false
13 | # record stats
14 | enable_metrics: true
15 |
16 | brand:
17 | new_issue_url: https://github.com/searxng/searxng/issues/new
18 | docs_url: https://docs.searxng.org/
19 | public_instances: https://searx.space
20 | wiki_url: https://github.com/searxng/searxng/wiki
21 | issue_url: https://github.com/searxng/searxng/issues
22 | # custom:
23 | # maintainer: "Jon Doe"
24 | # # Custom entries in the footer: [title]: [link]
25 | # links:
26 | # Uptime: https://uptime.searxng.org/history/darmarit-org
27 | # About: "https://searxng.org"
28 |
29 | search:
30 | # Filter results. 0: None, 1: Moderate, 2: Strict
31 | safe_search: 0
32 | # Existing autocomplete backends: "dbpedia", "duckduckgo", "google", "yandex", "mwmbl",
33 | # "seznam", "startpage", "stract", "swisscows", "qwant", "wikipedia" - leave blank to turn it off
34 | # by default.
35 | autocomplete: ""
36 | # minimun characters to type before autocompleter starts
37 | autocomplete_min: 4
38 | # Default search language - leave blank to detect from browser information or
39 | # use codes from 'languages.py'
40 | default_lang: "auto"
41 | # max_page: 0 # if engine supports paging, 0 means unlimited numbers of pages
42 | # Available languages
43 | # languages:
44 | # - all
45 | # - en
46 | # - en-US
47 | # - de
48 | # - it-IT
49 | # - fr
50 | # - fr-BE
51 | # ban time in seconds after engine errors
52 | ban_time_on_fail: 5
53 | # max ban time in seconds after engine errors
54 | max_ban_time_on_fail: 120
55 | suspended_times:
56 | # Engine suspension time after error (in seconds; set to 0 to disable)
57 | # For error "Access denied" and "HTTP error [402, 403]"
58 | SearxEngineAccessDenied: 86400
59 | # For error "CAPTCHA"
60 | SearxEngineCaptcha: 86400
61 | # For error "Too many request" and "HTTP error 429"
62 | SearxEngineTooManyRequests: 3600
63 | # Cloudflare CAPTCHA
64 | cf_SearxEngineCaptcha: 1296000
65 | cf_SearxEngineAccessDenied: 86400
66 | # ReCAPTCHA
67 | recaptcha_SearxEngineCaptcha: 604800
68 |
69 | # remove format to deny access, use lower case.
70 | # formats: [html, csv, json, rss]
71 | formats:
72 | - html
73 | - json
74 |
75 | server:
76 | # Is overwritten by ${SEARXNG_PORT} and ${SEARXNG_BIND_ADDRESS}
77 | port: 8888
78 | bind_address: "127.0.0.1"
79 | # public URL of the instance, to ensure correct inbound links. Is overwritten
80 | # by ${SEARXNG_URL}.
81 | base_url: / # "http://example.com/location"
82 | # rate limit the number of request on the instance, block some bots.
83 | # Is overwritten by ${SEARXNG_LIMITER}
84 | limiter: false
85 | # enable features designed only for public instances.
86 | # Is overwritten by ${SEARXNG_PUBLIC_INSTANCE}
87 | public_instance: false
88 |
89 | # If your instance owns a /etc/searxng/settings.yml file, then set the following
90 | # values there.
91 |
92 | secret_key: "09fdb393fba89866f4b3ed5ed4a13c735c9f8cb83947f31b0a306f3fa21f62c2" # Is overwritten by ${SEARXNG_SECRET}
93 | # Proxy image results through SearXNG. Is overwritten by ${SEARXNG_IMAGE_PROXY}
94 | image_proxy: false
95 | # 1.0 and 1.1 are supported
96 | http_protocol_version: "1.0"
97 | # POST queries are more secure as they don't show up in history but may cause
98 | # problems when using Firefox containers
99 | method: "POST"
100 | default_http_headers:
101 | X-Content-Type-Options: nosniff
102 | X-Download-Options: noopen
103 | X-Robots-Tag: noindex, nofollow
104 | Referrer-Policy: no-referrer
105 |
106 | redis:
107 | # URL to connect redis database. Is overwritten by ${SEARXNG_REDIS_URL}.
108 | # https://docs.searxng.org/admin/settings/settings_redis.html#settings-redis
109 | url: false
110 |
111 | ui:
112 | # Custom static path - leave it blank if you didn't change
113 | static_path: ""
114 | # Is overwritten by ${SEARXNG_STATIC_USE_HASH}.
115 | static_use_hash: false
116 | # Custom templates path - leave it blank if you didn't change
117 | templates_path: ""
118 | # query_in_title: When true, the result page's titles contains the query
119 | # it decreases the privacy, since the browser can records the page titles.
120 | query_in_title: false
121 | # infinite_scroll: When true, automatically loads the next page when scrolling to bottom of the current page.
122 | infinite_scroll: false
123 | # ui theme
124 | default_theme: simple
125 | # center the results ?
126 | center_alignment: false
127 | # URL prefix of the internet archive, don't forget trailing slash (if needed).
128 | # cache_url: "https://webcache.googleusercontent.com/search?q=cache:"
129 | # Default interface locale - leave blank to detect from browser information or
130 | # use codes from the 'locales' config section
131 | default_locale: ""
132 | # Open result links in a new tab by default
133 | # results_on_new_tab: false
134 | theme_args:
135 | # style of simple theme: auto, light, dark
136 | simple_style: auto
137 | # Perform search immediately if a category selected.
138 | # Disable to select multiple categories at once and start the search manually.
139 | search_on_category_select: true
140 | # Hotkeys: default or vim
141 | hotkeys: default
142 |
143 | # Lock arbitrary settings on the preferences page. To find the ID of the user
144 | # setting you want to lock, check the ID of the form on the page "preferences".
145 | #
146 | # preferences:
147 | # lock:
148 | # - language
149 | # - autocomplete
150 | # - method
151 | # - query_in_title
152 |
153 | # searx supports result proxification using an external service:
154 | # https://github.com/asciimoo/morty uncomment below section if you have running
155 | # morty proxy the key is base64 encoded (keep the !!binary notation)
156 | # Note: since commit af77ec3, morty accepts a base64 encoded key.
157 | #
158 | # result_proxy:
159 | # url: http://127.0.0.1:3000/
160 | # # the key is a base64 encoded string, the YAML !!binary prefix is optional
161 | # key: !!binary "your_morty_proxy_key"
162 | # # [true|false] enable the "proxy" button next to each result
163 | # proxify_results: true
164 |
165 | # communication with search engines
166 | #
167 | outgoing:
168 | # default timeout in seconds, can be override by engine
169 | request_timeout: 3.0
170 | # the maximum timeout in seconds
171 | # max_request_timeout: 10.0
172 | # suffix of searx_useragent, could contain information like an email address
173 | # to the administrator
174 | useragent_suffix: ""
175 | # The maximum number of concurrent connections that may be established.
176 | pool_connections: 100
177 | # Allow the connection pool to maintain keep-alive connections below this
178 | # point.
179 | pool_maxsize: 20
180 | # See https://www.python-httpx.org/http2/
181 | enable_http2: true
182 | # uncomment below section if you want to use a custom server certificate
183 | # see https://www.python-httpx.org/advanced/#changing-the-verification-defaults
184 | # and https://www.python-httpx.org/compatibility/#ssl-configuration
185 | # verify: ~/.mitmproxy/mitmproxy-ca-cert.cer
186 | #
187 | # uncomment below section if you want to use a proxyq see: SOCKS proxies
188 | # https://2.python-requests.org/en/latest/user/advanced/#proxies
189 | # are also supported: see
190 | # https://2.python-requests.org/en/latest/user/advanced/#socks
191 | #
192 | # proxies:
193 | # all://:
194 | # - http://proxy1:8080
195 | # - http://proxy2:8080
196 | #
197 | # using_tor_proxy: true
198 | #
199 | # Extra seconds to add in order to account for the time taken by the proxy
200 | #
201 | # extra_proxy_timeout: 10
202 | #
203 | # uncomment below section only if you have more than one network interface
204 | # which can be the source of outgoing search requests
205 | #
206 | # source_ips:
207 | # - 1.1.1.1
208 | # - 1.1.1.2
209 | # - fe80::/126
210 |
211 | # External plugin configuration, for more details see
212 | # https://docs.searxng.org/dev/plugins.html
213 | #
214 | # plugins:
215 | # - plugin1
216 | # - plugin2
217 | # - ...
218 |
219 | # Comment or un-comment plugin to activate / deactivate by default.
220 | #
221 | # enabled_plugins:
222 | # # these plugins are enabled if nothing is configured ..
223 | # - 'Basic Calculator'
224 | # - 'Hash plugin'
225 | # - 'Self Information'
226 | # - 'Tracker URL remover'
227 | # - 'Ahmia blacklist' # activation depends on outgoing.using_tor_proxy
228 | # # these plugins are disabled if nothing is configured ..
229 | # - 'Hostnames plugin' # see 'hostnames' configuration below
230 | # - 'Open Access DOI rewrite'
231 | # - 'Tor check plugin'
232 | # # Read the docs before activate: auto-detection of the language could be
233 | # # detrimental to users expectations / users can activate the plugin in the
234 | # # preferences if they want.
235 | # - 'Autodetect search language'
236 |
237 | # Configuration of the "Hostnames plugin":
238 | #
239 | # hostnames:
240 | # replace:
241 | # '(.*\.)?youtube\.com$': 'invidious.example.com'
242 | # '(.*\.)?youtu\.be$': 'invidious.example.com'
243 | # '(.*\.)?reddit\.com$': 'teddit.example.com'
244 | # '(.*\.)?redd\.it$': 'teddit.example.com'
245 | # '(www\.)?twitter\.com$': 'nitter.example.com'
246 | # remove:
247 | # - '(.*\.)?facebook.com$'
248 | # low_priority:
249 | # - '(.*\.)?google(\..*)?$'
250 | # high_priority:
251 | # - '(.*\.)?wikipedia.org$'
252 | #
253 | # Alternatively you can use external files for configuring the "Hostnames plugin":
254 | #
255 | # hostnames:
256 | # replace: 'rewrite-hosts.yml'
257 | #
258 | # Content of 'rewrite-hosts.yml' (place the file in the same directory as 'settings.yml'):
259 | # '(.*\.)?youtube\.com$': 'invidious.example.com'
260 | # '(.*\.)?youtu\.be$': 'invidious.example.com'
261 | #
262 |
263 | checker:
264 | # disable checker when in debug mode
265 | off_when_debug: true
266 |
267 | # use "scheduling: false" to disable scheduling
268 | # scheduling: interval or int
269 |
270 | # to activate the scheduler:
271 | # * uncomment "scheduling" section
272 | # * add "cache2 = name=searxngcache,items=2000,blocks=2000,blocksize=4096,bitmap=1"
273 | # to your uwsgi.ini
274 |
275 | # scheduling:
276 | # start_after: [300, 1800] # delay to start the first run of the checker
277 | # every: [86400, 90000] # how often the checker runs
278 |
279 | # additional tests: only for the YAML anchors (see the engines section)
280 | #
281 | additional_tests:
282 | rosebud: &test_rosebud
283 | matrix:
284 | query: rosebud
285 | lang: en
286 | result_container:
287 | - not_empty
288 | - ['one_title_contains', 'citizen kane']
289 | test:
290 | - unique_results
291 |
292 | android: &test_android
293 | matrix:
294 | query: ['android']
295 | lang: ['en', 'de', 'fr', 'zh-CN']
296 | result_container:
297 | - not_empty
298 | - ['one_title_contains', 'google']
299 | test:
300 | - unique_results
301 |
302 | # tests: only for the YAML anchors (see the engines section)
303 | tests:
304 | infobox: &tests_infobox
305 | infobox:
306 | matrix:
307 | query: ["linux", "new york", "bbc"]
308 | result_container:
309 | - has_infobox
310 |
311 | categories_as_tabs:
312 | general:
313 | images:
314 | videos:
315 | news:
316 | map:
317 | music:
318 | it:
319 | science:
320 | files:
321 | social media:
322 |
323 | engines:
324 | - name: 9gag
325 | engine: 9gag
326 | shortcut: 9g
327 | disabled: true
328 |
329 | - name: alpine linux packages
330 | engine: alpinelinux
331 | disabled: true
332 | shortcut: alp
333 |
334 | - name: annas archive
335 | engine: annas_archive
336 | disabled: true
337 | shortcut: aa
338 |
339 | # - name: annas articles
340 | # engine: annas_archive
341 | # shortcut: aaa
342 | # # https://docs.searxng.org/dev/engines/online/annas_archive.html
343 | # aa_content: 'magazine' # book_fiction, book_unknown, book_nonfiction, book_comic
344 | # aa_ext: 'pdf' # pdf, epub, ..
345 | # aa_sort: oldest' # newest, oldest, largest, smallest
346 |
347 | - name: apk mirror
348 | engine: apkmirror
349 | timeout: 4.0
350 | shortcut: apkm
351 | disabled: true
352 |
353 | - name: apple app store
354 | engine: apple_app_store
355 | shortcut: aps
356 | disabled: true
357 |
358 | # Requires Tor
359 | - name: ahmia
360 | engine: ahmia
361 | categories: onions
362 | enable_http: true
363 | shortcut: ah
364 |
365 | - name: anaconda
366 | engine: xpath
367 | paging: true
368 | first_page_num: 0
369 | search_url: https://anaconda.org/search?q={query}&page={pageno}
370 | results_xpath: //tbody/tr
371 | url_xpath: ./td/h5/a[last()]/@href
372 | title_xpath: ./td/h5
373 | content_xpath: ./td[h5]/text()
374 | categories: it
375 | timeout: 6.0
376 | shortcut: conda
377 | disabled: true
378 |
379 | - name: arch linux wiki
380 | engine: archlinux
381 | shortcut: al
382 |
383 | - name: artic
384 | engine: artic
385 | shortcut: arc
386 | timeout: 4.0
387 |
388 | - name: arxiv
389 | engine: arxiv
390 | shortcut: arx
391 | timeout: 4.0
392 |
393 | - name: ask
394 | engine: ask
395 | shortcut: ask
396 | disabled: true
397 |
398 | # tmp suspended: dh key too small
399 | # - name: base
400 | # engine: base
401 | # shortcut: bs
402 |
403 | - name: bandcamp
404 | engine: bandcamp
405 | shortcut: bc
406 | categories: music
407 |
408 | - name: wikipedia
409 | engine: wikipedia
410 | shortcut: wp
411 | # add "list" to the array to get results in the results list
412 | display_type: ["infobox"]
413 | base_url: 'https://{language}.wikipedia.org/'
414 | categories: [general]
415 |
416 | - name: bilibili
417 | engine: bilibili
418 | shortcut: bil
419 | disabled: true
420 |
421 | - name: bing
422 | engine: bing
423 | shortcut: bi
424 | disabled: true
425 |
426 | - name: bing images
427 | engine: bing_images
428 | shortcut: bii
429 |
430 | - name: bing news
431 | engine: bing_news
432 | shortcut: bin
433 |
434 | - name: bing videos
435 | engine: bing_videos
436 | shortcut: biv
437 |
438 | - name: bitbucket
439 | engine: xpath
440 | paging: true
441 | search_url: https://bitbucket.org/repo/all/{pageno}?name={query}
442 | url_xpath: //article[@class="repo-summary"]//a[@class="repo-link"]/@href
443 | title_xpath: //article[@class="repo-summary"]//a[@class="repo-link"]
444 | content_xpath: //article[@class="repo-summary"]/p
445 | categories: [it, repos]
446 | timeout: 4.0
447 | disabled: true
448 | shortcut: bb
449 | about:
450 | website: https://bitbucket.org/
451 | wikidata_id: Q2493781
452 | official_api_documentation: https://developer.atlassian.com/bitbucket
453 | use_official_api: false
454 | require_api_key: false
455 | results: HTML
456 |
457 | - name: bpb
458 | engine: bpb
459 | shortcut: bpb
460 | disabled: true
461 |
462 | - name: btdigg
463 | engine: btdigg
464 | shortcut: bt
465 | disabled: true
466 |
467 | - name: openverse
468 | engine: openverse
469 | categories: images
470 | shortcut: opv
471 |
472 | - name: media.ccc.de
473 | engine: ccc_media
474 | shortcut: c3tv
475 | # We don't set language: de here because media.ccc.de is not just
476 | # for a German audience. It contains many English videos and many
477 | # German videos have English subtitles.
478 | disabled: true
479 |
480 | - name: chefkoch
481 | engine: chefkoch
482 | shortcut: chef
483 | # to show premium or plus results too:
484 | # skip_premium: false
485 |
486 | - name: cloudflareai
487 | engine: cloudflareai
488 | shortcut: cfai
489 | # get api token and accont id from https://developers.cloudflare.com/workers-ai/get-started/rest-api/
490 | cf_account_id: 'your_cf_accout_id'
491 | cf_ai_api: 'your_cf_api'
492 | # create your ai gateway by https://developers.cloudflare.com/ai-gateway/get-started/creating-gateway/
493 | cf_ai_gateway: 'your_cf_ai_gateway_name'
494 | # find the model name from https://developers.cloudflare.com/workers-ai/models/#text-generation
495 | cf_ai_model: 'ai_model_name'
496 | # custom your preferences
497 | # cf_ai_model_display_name: 'Cloudflare AI'
498 | # cf_ai_model_assistant: 'prompts_for_assistant_role'
499 | # cf_ai_model_system: 'prompts_for_system_role'
500 | timeout: 30
501 | disabled: true
502 |
503 | # - name: core.ac.uk
504 | # engine: core
505 | # categories: science
506 | # shortcut: cor
507 | # # get your API key from: https://core.ac.uk/api-keys/register/
508 | # api_key: 'unset'
509 |
510 | - name: cppreference
511 | engine: cppreference
512 | shortcut: cpp
513 | paging: false
514 | disabled: true
515 |
516 | - name: crossref
517 | engine: crossref
518 | shortcut: cr
519 | timeout: 30
520 | disabled: true
521 |
522 | - name: crowdview
523 | engine: json_engine
524 | shortcut: cv
525 | categories: general
526 | paging: false
527 | search_url: https://crowdview-next-js.onrender.com/api/search-v3?query={query}
528 | results_query: results
529 | url_query: link
530 | title_query: title
531 | content_query: snippet
532 | disabled: true
533 | about:
534 | website: https://crowdview.ai/
535 |
536 | - name: yep
537 | engine: yep
538 | shortcut: yep
539 | categories: general
540 | search_type: web
541 | timeout: 5
542 | disabled: true
543 |
544 | - name: yep images
545 | engine: yep
546 | shortcut: yepi
547 | categories: images
548 | search_type: images
549 | disabled: true
550 |
551 | - name: yep news
552 | engine: yep
553 | shortcut: yepn
554 | categories: news
555 | search_type: news
556 | disabled: true
557 |
558 | - name: curlie
559 | engine: xpath
560 | shortcut: cl
561 | categories: general
562 | disabled: true
563 | paging: true
564 | lang_all: ''
565 | search_url: https://curlie.org/search?q={query}&lang={lang}&start={pageno}&stime=92452189
566 | page_size: 20
567 | results_xpath: //div[@id="site-list-content"]/div[@class="site-item"]
568 | url_xpath: ./div[@class="title-and-desc"]/a/@href
569 | title_xpath: ./div[@class="title-and-desc"]/a/div
570 | content_xpath: ./div[@class="title-and-desc"]/div[@class="site-descr"]
571 | about:
572 | website: https://curlie.org/
573 | wikidata_id: Q60715723
574 | use_official_api: false
575 | require_api_key: false
576 | results: HTML
577 |
578 | - name: currency
579 | engine: currency_convert
580 | categories: general
581 | shortcut: cc
582 |
583 | - name: deezer
584 | engine: deezer
585 | shortcut: dz
586 | disabled: true
587 |
588 | - name: destatis
589 | engine: destatis
590 | shortcut: destat
591 | disabled: true
592 |
593 | - name: deviantart
594 | engine: deviantart
595 | shortcut: da
596 | timeout: 3.0
597 |
598 | - name: ddg definitions
599 | engine: duckduckgo_definitions
600 | shortcut: ddd
601 | weight: 2
602 | disabled: true
603 | tests: *tests_infobox
604 |
605 | # cloudflare protected
606 | # - name: digbt
607 | # engine: digbt
608 | # shortcut: dbt
609 | # timeout: 6.0
610 | # disabled: true
611 |
612 | - name: docker hub
613 | engine: docker_hub
614 | shortcut: dh
615 | categories: [it, packages]
616 |
617 | - name: encyclosearch
618 | engine: json_engine
619 | shortcut: es
620 | categories: general
621 | paging: true
622 | search_url: https://encyclosearch.org/encyclosphere/search?q={query}&page={pageno}&resultsPerPage=15
623 | results_query: Results
624 | url_query: SourceURL
625 | title_query: Title
626 | content_query: Description
627 | disabled: true
628 | about:
629 | website: https://encyclosearch.org
630 | official_api_documentation: https://encyclosearch.org/docs/#/rest-api
631 | use_official_api: true
632 | require_api_key: false
633 | results: JSON
634 |
635 | - name: erowid
636 | engine: xpath
637 | paging: true
638 | first_page_num: 0
639 | page_size: 30
640 | search_url: https://www.erowid.org/search.php?q={query}&s={pageno}
641 | url_xpath: //dl[@class="results-list"]/dt[@class="result-title"]/a/@href
642 | title_xpath: //dl[@class="results-list"]/dt[@class="result-title"]/a/text()
643 | content_xpath: //dl[@class="results-list"]/dd[@class="result-details"]
644 | categories: []
645 | shortcut: ew
646 | disabled: true
647 | about:
648 | website: https://www.erowid.org/
649 | wikidata_id: Q1430691
650 | official_api_documentation:
651 | use_official_api: false
652 | require_api_key: false
653 | results: HTML
654 |
655 | # - name: elasticsearch
656 | # shortcut: es
657 | # engine: elasticsearch
658 | # base_url: http://localhost:9200
659 | # username: elastic
660 | # password: changeme
661 | # index: my-index
662 | # # available options: match, simple_query_string, term, terms, custom
663 | # query_type: match
664 | # # if query_type is set to custom, provide your query here
665 | # #custom_query_json: {"query":{"match_all": {}}}
666 | # #show_metadata: false
667 | # disabled: true
668 |
669 | - name: wikidata
670 | engine: wikidata
671 | shortcut: wd
672 | timeout: 3.0
673 | weight: 2
674 | # add "list" to the array to get results in the results list
675 | display_type: ["infobox"]
676 | tests: *tests_infobox
677 | categories: [general]
678 |
679 | - name: duckduckgo
680 | engine: duckduckgo
681 | shortcut: ddg
682 |
683 | - name: duckduckgo images
684 | engine: duckduckgo_extra
685 | categories: [images, web]
686 | ddg_category: images
687 | shortcut: ddi
688 | disabled: true
689 |
690 | - name: duckduckgo videos
691 | engine: duckduckgo_extra
692 | categories: [videos, web]
693 | ddg_category: videos
694 | shortcut: ddv
695 | disabled: true
696 |
697 | - name: duckduckgo news
698 | engine: duckduckgo_extra
699 | categories: [news, web]
700 | ddg_category: news
701 | shortcut: ddn
702 | disabled: true
703 |
704 | - name: duckduckgo weather
705 | engine: duckduckgo_weather
706 | shortcut: ddw
707 | disabled: true
708 |
709 | - name: apple maps
710 | engine: apple_maps
711 | shortcut: apm
712 | disabled: true
713 | timeout: 5.0
714 |
715 | - name: emojipedia
716 | engine: emojipedia
717 | timeout: 4.0
718 | shortcut: em
719 | disabled: true
720 |
721 | - name: tineye
722 | engine: tineye
723 | shortcut: tin
724 | timeout: 9.0
725 | disabled: true
726 |
727 | - name: etymonline
728 | engine: xpath
729 | paging: true
730 | search_url: https://etymonline.com/search?page={pageno}&q={query}
731 | url_xpath: //a[contains(@class, "word__name--")]/@href
732 | title_xpath: //a[contains(@class, "word__name--")]
733 | content_xpath: //section[contains(@class, "word__defination")]
734 | first_page_num: 1
735 | shortcut: et
736 | categories: [dictionaries]
737 | about:
738 | website: https://www.etymonline.com/
739 | wikidata_id: Q1188617
740 | official_api_documentation:
741 | use_official_api: false
742 | require_api_key: false
743 | results: HTML
744 |
745 | # - name: ebay
746 | # engine: ebay
747 | # shortcut: eb
748 | # base_url: 'https://www.ebay.com'
749 | # disabled: true
750 | # timeout: 5
751 |
752 | - name: 1x
753 | engine: www1x
754 | shortcut: 1x
755 | timeout: 3.0
756 | disabled: true
757 |
758 | - name: fdroid
759 | engine: fdroid
760 | shortcut: fd
761 | disabled: true
762 |
763 | - name: findthatmeme
764 | engine: findthatmeme
765 | shortcut: ftm
766 | disabled: true
767 |
768 | - name: flickr
769 | categories: images
770 | shortcut: fl
771 | # You can use the engine using the official stable API, but you need an API
772 | # key, see: https://www.flickr.com/services/apps/create/
773 | # engine: flickr
774 | # api_key: 'apikey' # required!
775 | # Or you can use the html non-stable engine, activated by default
776 | engine: flickr_noapi
777 |
778 | - name: free software directory
779 | engine: mediawiki
780 | shortcut: fsd
781 | categories: [it, software wikis]
782 | base_url: https://directory.fsf.org/
783 | search_type: title
784 | timeout: 5.0
785 | disabled: true
786 | about:
787 | website: https://directory.fsf.org/
788 | wikidata_id: Q2470288
789 |
790 | # - name: freesound
791 | # engine: freesound
792 | # shortcut: fnd
793 | # disabled: true
794 | # timeout: 15.0
795 | # API key required, see: https://freesound.org/docs/api/overview.html
796 | # api_key: MyAPIkey
797 |
798 | - name: frinkiac
799 | engine: frinkiac
800 | shortcut: frk
801 | disabled: true
802 |
803 | - name: fyyd
804 | engine: fyyd
805 | shortcut: fy
806 | timeout: 8.0
807 | disabled: true
808 |
809 | - name: geizhals
810 | engine: geizhals
811 | shortcut: geiz
812 | disabled: true
813 |
814 | - name: genius
815 | engine: genius
816 | shortcut: gen
817 |
818 | - name: gentoo
819 | engine: mediawiki
820 | shortcut: ge
821 | categories: ["it", "software wikis"]
822 | base_url: "https://wiki.gentoo.org/"
823 | api_path: "api.php"
824 | search_type: text
825 | timeout: 10
826 |
827 | - name: gitlab
828 | engine: gitlab
829 | base_url: https://gitlab.com
830 | shortcut: gl
831 | disabled: true
832 | about:
833 | website: https://gitlab.com/
834 | wikidata_id: Q16639197
835 |
836 | # - name: gnome
837 | # engine: gitlab
838 | # base_url: https://gitlab.gnome.org
839 | # shortcut: gn
840 | # about:
841 | # website: https://gitlab.gnome.org
842 | # wikidata_id: Q44316
843 |
844 | - name: github
845 | engine: github
846 | shortcut: gh
847 |
848 | - name: codeberg
849 | # https://docs.searxng.org/dev/engines/online/gitea.html
850 | engine: gitea
851 | base_url: https://codeberg.org
852 | shortcut: cb
853 | disabled: true
854 |
855 | - name: gitea.com
856 | engine: gitea
857 | base_url: https://gitea.com
858 | shortcut: gitea
859 | disabled: true
860 |
861 | - name: goodreads
862 | engine: goodreads
863 | shortcut: good
864 | timeout: 4.0
865 | disabled: true
866 |
867 | - name: google
868 | engine: google
869 | shortcut: go
870 | # additional_tests:
871 | # android: *test_android
872 |
873 | - name: google images
874 | engine: google_images
875 | shortcut: goi
876 | # additional_tests:
877 | # android: *test_android
878 | # dali:
879 | # matrix:
880 | # query: ['Dali Christ']
881 | # lang: ['en', 'de', 'fr', 'zh-CN']
882 | # result_container:
883 | # - ['one_title_contains', 'Salvador']
884 |
885 | - name: google news
886 | engine: google_news
887 | shortcut: gon
888 | # additional_tests:
889 | # android: *test_android
890 |
891 | - name: google videos
892 | engine: google_videos
893 | shortcut: gov
894 | # additional_tests:
895 | # android: *test_android
896 |
897 | - name: google scholar
898 | engine: google_scholar
899 | shortcut: gos
900 |
901 | - name: google play apps
902 | engine: google_play
903 | categories: [files, apps]
904 | shortcut: gpa
905 | play_categ: apps
906 | disabled: true
907 |
908 | - name: google play movies
909 | engine: google_play
910 | categories: videos
911 | shortcut: gpm
912 | play_categ: movies
913 | disabled: true
914 |
915 | - name: material icons
916 | engine: material_icons
917 | categories: images
918 | shortcut: mi
919 | disabled: true
920 |
921 | - name: habrahabr
922 | engine: xpath
923 | paging: true
924 | search_url: https://habr.com/en/search/page{pageno}/?q={query}
925 | results_xpath: //article[contains(@class, "tm-articles-list__item")]
926 | url_xpath: .//a[@class="tm-title__link"]/@href
927 | title_xpath: .//a[@class="tm-title__link"]
928 | content_xpath: .//div[contains(@class, "article-formatted-body")]
929 | categories: it
930 | timeout: 4.0
931 | disabled: true
932 | shortcut: habr
933 | about:
934 | website: https://habr.com/
935 | wikidata_id: Q4494434
936 | official_api_documentation: https://habr.com/en/docs/help/api/
937 | use_official_api: false
938 | require_api_key: false
939 | results: HTML
940 |
941 | - name: hackernews
942 | engine: hackernews
943 | shortcut: hn
944 | disabled: true
945 |
946 | - name: hex
947 | engine: hex
948 | shortcut: hex
949 | disabled: true
950 | # Valid values: name inserted_at updated_at total_downloads recent_downloads
951 | sort_criteria: "recent_downloads"
952 | page_size: 10
953 |
954 | - name: crates.io
955 | engine: crates
956 | shortcut: crates
957 | disabled: true
958 | timeout: 6.0
959 |
960 | - name: hoogle
961 | engine: xpath
962 | search_url: https://hoogle.haskell.org/?hoogle={query}
963 | results_xpath: '//div[@class="result"]'
964 | title_xpath: './/div[@class="ans"]//a'
965 | url_xpath: './/div[@class="ans"]//a/@href'
966 | content_xpath: './/div[@class="from"]'
967 | page_size: 20
968 | categories: [it, packages]
969 | shortcut: ho
970 | about:
971 | website: https://hoogle.haskell.org/
972 | wikidata_id: Q34010
973 | official_api_documentation: https://hackage.haskell.org/api
974 | use_official_api: false
975 | require_api_key: false
976 | results: JSON
977 |
978 | - name: imdb
979 | engine: imdb
980 | shortcut: imdb
981 | timeout: 6.0
982 | disabled: true
983 |
984 | - name: imgur
985 | engine: imgur
986 | shortcut: img
987 | disabled: true
988 |
989 | - name: ina
990 | engine: ina
991 | shortcut: in
992 | timeout: 6.0
993 | disabled: true
994 |
995 | - name: invidious
996 | engine: invidious
997 | # Instanes will be selected randomly, see https://api.invidious.io/ for
998 | # instances that are stable (good uptime) and close to you.
999 | base_url:
1000 | - https://invidious.io.lol
1001 | - https://invidious.fdn.fr
1002 | - https://yt.artemislena.eu
1003 | - https://invidious.tiekoetter.com
1004 | - https://invidious.flokinet.to
1005 | - https://vid.puffyan.us
1006 | - https://invidious.privacydev.net
1007 | - https://inv.tux.pizza
1008 | shortcut: iv
1009 | timeout: 3.0
1010 | disabled: true
1011 |
1012 | - name: jisho
1013 | engine: jisho
1014 | shortcut: js
1015 | timeout: 3.0
1016 | disabled: true
1017 |
1018 | - name: kickass
1019 | engine: kickass
1020 | base_url:
1021 | - https://kickasstorrents.to
1022 | - https://kickasstorrents.cr
1023 | - https://kickasstorrent.cr
1024 | - https://kickass.sx
1025 | - https://kat.am
1026 | shortcut: kc
1027 | timeout: 4.0
1028 |
1029 | - name: lemmy communities
1030 | engine: lemmy
1031 | lemmy_type: Communities
1032 | shortcut: leco
1033 |
1034 | - name: lemmy users
1035 | engine: lemmy
1036 | network: lemmy communities
1037 | lemmy_type: Users
1038 | shortcut: leus
1039 |
1040 | - name: lemmy posts
1041 | engine: lemmy
1042 | network: lemmy communities
1043 | lemmy_type: Posts
1044 | shortcut: lepo
1045 |
1046 | - name: lemmy comments
1047 | engine: lemmy
1048 | network: lemmy communities
1049 | lemmy_type: Comments
1050 | shortcut: lecom
1051 |
1052 | - name: library genesis
1053 | engine: xpath
1054 | # search_url: https://libgen.is/search.php?req={query}
1055 | search_url: https://libgen.rs/search.php?req={query}
1056 | url_xpath: //a[contains(@href,"book/index.php?md5")]/@href
1057 | title_xpath: //a[contains(@href,"book/")]/text()[1]
1058 | content_xpath: //td/a[1][contains(@href,"=author")]/text()
1059 | categories: files
1060 | timeout: 7.0
1061 | disabled: true
1062 | shortcut: lg
1063 | about:
1064 | website: https://libgen.fun/
1065 | wikidata_id: Q22017206
1066 | official_api_documentation:
1067 | use_official_api: false
1068 | require_api_key: false
1069 | results: HTML
1070 |
1071 | - name: z-library
1072 | engine: zlibrary
1073 | shortcut: zlib
1074 | categories: files
1075 | timeout: 7.0
1076 |
1077 | - name: library of congress
1078 | engine: loc
1079 | shortcut: loc
1080 | categories: images
1081 |
1082 | - name: libretranslate
1083 | engine: libretranslate
1084 | # https://github.com/LibreTranslate/LibreTranslate?tab=readme-ov-file#mirrors
1085 | base_url:
1086 | - https://translate.terraprint.co
1087 | - https://trans.zillyhuhn.com
1088 | # api_key: abc123
1089 | shortcut: lt
1090 | disabled: true
1091 |
1092 | - name: lingva
1093 | engine: lingva
1094 | shortcut: lv
1095 | # set lingva instance in url, by default it will use the official instance
1096 | # url: https://lingva.thedaviddelta.com
1097 |
1098 | - name: lobste.rs
1099 | engine: xpath
1100 | search_url: https://lobste.rs/search?q={query}&what=stories&order=relevance
1101 | results_xpath: //li[contains(@class, "story")]
1102 | url_xpath: .//a[@class="u-url"]/@href
1103 | title_xpath: .//a[@class="u-url"]
1104 | content_xpath: .//a[@class="domain"]
1105 | categories: it
1106 | shortcut: lo
1107 | timeout: 5.0
1108 | disabled: true
1109 | about:
1110 | website: https://lobste.rs/
1111 | wikidata_id: Q60762874
1112 | official_api_documentation:
1113 | use_official_api: false
1114 | require_api_key: false
1115 | results: HTML
1116 |
1117 | - name: mastodon users
1118 | engine: mastodon
1119 | mastodon_type: accounts
1120 | base_url: https://mastodon.social
1121 | shortcut: mau
1122 |
1123 | - name: mastodon hashtags
1124 | engine: mastodon
1125 | mastodon_type: hashtags
1126 | base_url: https://mastodon.social
1127 | shortcut: mah
1128 |
1129 | # - name: matrixrooms
1130 | # engine: mrs
1131 | # # https://docs.searxng.org/dev/engines/online/mrs.html
1132 | # # base_url: https://mrs-api-host
1133 | # shortcut: mtrx
1134 | # disabled: true
1135 |
1136 | - name: mdn
1137 | shortcut: mdn
1138 | engine: json_engine
1139 | categories: [it]
1140 | paging: true
1141 | search_url: https://developer.mozilla.org/api/v1/search?q={query}&page={pageno}
1142 | results_query: documents
1143 | url_query: mdn_url
1144 | url_prefix: https://developer.mozilla.org
1145 | title_query: title
1146 | content_query: summary
1147 | about:
1148 | website: https://developer.mozilla.org
1149 | wikidata_id: Q3273508
1150 | official_api_documentation: null
1151 | use_official_api: false
1152 | require_api_key: false
1153 | results: JSON
1154 |
1155 | - name: metacpan
1156 | engine: metacpan
1157 | shortcut: cpan
1158 | disabled: true
1159 | number_of_results: 20
1160 |
1161 | # - name: meilisearch
1162 | # engine: meilisearch
1163 | # shortcut: mes
1164 | # enable_http: true
1165 | # base_url: http://localhost:7700
1166 | # index: my-index
1167 |
1168 | - name: mixcloud
1169 | engine: mixcloud
1170 | shortcut: mc
1171 |
1172 | # MongoDB engine
1173 | # Required dependency: pymongo
1174 | # - name: mymongo
1175 | # engine: mongodb
1176 | # shortcut: md
1177 | # exact_match_only: false
1178 | # host: '127.0.0.1'
1179 | # port: 27017
1180 | # enable_http: true
1181 | # results_per_page: 20
1182 | # database: 'business'
1183 | # collection: 'reviews' # name of the db collection
1184 | # key: 'name' # key in the collection to search for
1185 |
1186 | - name: mozhi
1187 | engine: mozhi
1188 | base_url:
1189 | - https://mozhi.aryak.me
1190 | - https://translate.bus-hit.me
1191 | - https://nyc1.mz.ggtyler.dev
1192 | # mozhi_engine: google - see https://mozhi.aryak.me for supported engines
1193 | timeout: 4.0
1194 | shortcut: mz
1195 | disabled: true
1196 |
1197 | - name: mwmbl
1198 | engine: mwmbl
1199 | # api_url: https://api.mwmbl.org
1200 | shortcut: mwm
1201 | disabled: true
1202 |
1203 | - name: npm
1204 | engine: npm
1205 | shortcut: npm
1206 | timeout: 5.0
1207 | disabled: true
1208 |
1209 | - name: nyaa
1210 | engine: nyaa
1211 | shortcut: nt
1212 | disabled: true
1213 |
1214 | - name: mankier
1215 | engine: json_engine
1216 | search_url: https://www.mankier.com/api/v2/mans/?q={query}
1217 | results_query: results
1218 | url_query: url
1219 | title_query: name
1220 | content_query: description
1221 | categories: it
1222 | shortcut: man
1223 | about:
1224 | website: https://www.mankier.com/
1225 | official_api_documentation: https://www.mankier.com/api
1226 | use_official_api: true
1227 | require_api_key: false
1228 | results: JSON
1229 |
1230 | # read https://docs.searxng.org/dev/engines/online/mullvad_leta.html
1231 | # - name: mullvadleta
1232 | # engine: mullvad_leta
1233 | # leta_engine: google # choose one of the following: google, brave
1234 | # use_cache: true # Only 100 non-cache searches per day, suggested only for private instances
1235 | # search_url: https://leta.mullvad.net
1236 | # categories: [general, web]
1237 | # shortcut: ml
1238 |
1239 | - name: odysee
1240 | engine: odysee
1241 | shortcut: od
1242 | disabled: true
1243 |
1244 | - name: openairedatasets
1245 | engine: json_engine
1246 | paging: true
1247 | search_url: https://api.openaire.eu/search/datasets?format=json&page={pageno}&size=10&title={query}
1248 | results_query: response/results/result
1249 | url_query: metadata/oaf:entity/oaf:result/children/instance/webresource/url/$
1250 | title_query: metadata/oaf:entity/oaf:result/title/$
1251 | content_query: metadata/oaf:entity/oaf:result/description/$
1252 | content_html_to_text: true
1253 | categories: "science"
1254 | shortcut: oad
1255 | timeout: 5.0
1256 | about:
1257 | website: https://www.openaire.eu/
1258 | wikidata_id: Q25106053
1259 | official_api_documentation: https://api.openaire.eu/
1260 | use_official_api: false
1261 | require_api_key: false
1262 | results: JSON
1263 |
1264 | - name: openairepublications
1265 | engine: json_engine
1266 | paging: true
1267 | search_url: https://api.openaire.eu/search/publications?format=json&page={pageno}&size=10&title={query}
1268 | results_query: response/results/result
1269 | url_query: metadata/oaf:entity/oaf:result/children/instance/webresource/url/$
1270 | title_query: metadata/oaf:entity/oaf:result/title/$
1271 | content_query: metadata/oaf:entity/oaf:result/description/$
1272 | content_html_to_text: true
1273 | categories: science
1274 | shortcut: oap
1275 | timeout: 5.0
1276 | about:
1277 | website: https://www.openaire.eu/
1278 | wikidata_id: Q25106053
1279 | official_api_documentation: https://api.openaire.eu/
1280 | use_official_api: false
1281 | require_api_key: false
1282 | results: JSON
1283 |
1284 | - name: openmeteo
1285 | engine: open_meteo
1286 | shortcut: om
1287 | disabled: true
1288 |
1289 | # - name: opensemanticsearch
1290 | # engine: opensemantic
1291 | # shortcut: oss
1292 | # base_url: 'http://localhost:8983/solr/opensemanticsearch/'
1293 |
1294 | - name: openstreetmap
1295 | engine: openstreetmap
1296 | shortcut: osm
1297 |
1298 | - name: openrepos
1299 | engine: xpath
1300 | paging: true
1301 | search_url: https://openrepos.net/search/node/{query}?page={pageno}
1302 | url_xpath: //li[@class="search-result"]//h3[@class="title"]/a/@href
1303 | title_xpath: //li[@class="search-result"]//h3[@class="title"]/a
1304 | content_xpath: //li[@class="search-result"]//div[@class="search-snippet-info"]//p[@class="search-snippet"]
1305 | categories: files
1306 | timeout: 4.0
1307 | disabled: true
1308 | shortcut: or
1309 | about:
1310 | website: https://openrepos.net/
1311 | wikidata_id:
1312 | official_api_documentation:
1313 | use_official_api: false
1314 | require_api_key: false
1315 | results: HTML
1316 |
1317 | - name: packagist
1318 | engine: json_engine
1319 | paging: true
1320 | search_url: https://packagist.org/search.json?q={query}&page={pageno}
1321 | results_query: results
1322 | url_query: url
1323 | title_query: name
1324 | content_query: description
1325 | categories: [it, packages]
1326 | disabled: true
1327 | timeout: 5.0
1328 | shortcut: pack
1329 | about:
1330 | website: https://packagist.org
1331 | wikidata_id: Q108311377
1332 | official_api_documentation: https://packagist.org/apidoc
1333 | use_official_api: true
1334 | require_api_key: false
1335 | results: JSON
1336 |
1337 | - name: pdbe
1338 | engine: pdbe
1339 | shortcut: pdb
1340 | # Hide obsolete PDB entries. Default is not to hide obsolete structures
1341 | # hide_obsolete: false
1342 |
1343 | - name: photon
1344 | engine: photon
1345 | shortcut: ph
1346 |
1347 | - name: pinterest
1348 | engine: pinterest
1349 | shortcut: pin
1350 |
1351 | - name: piped
1352 | engine: piped
1353 | shortcut: ppd
1354 | categories: videos
1355 | piped_filter: videos
1356 | timeout: 3.0
1357 |
1358 | # URL to use as link and for embeds
1359 | frontend_url: https://srv.piped.video
1360 | # Instance will be selected randomly, for more see https://piped-instances.kavin.rocks/
1361 | backend_url:
1362 | - https://pipedapi.kavin.rocks
1363 | - https://pipedapi-libre.kavin.rocks
1364 | - https://pipedapi.adminforge.de
1365 |
1366 | - name: piped.music
1367 | engine: piped
1368 | network: piped
1369 | shortcut: ppdm
1370 | categories: music
1371 | piped_filter: music_songs
1372 | timeout: 3.0
1373 |
1374 | - name: piratebay
1375 | engine: piratebay
1376 | shortcut: tpb
1377 | # You may need to change this URL to a proxy if piratebay is blocked in your
1378 | # country
1379 | url: https://thepiratebay.org/
1380 | timeout: 3.0
1381 |
1382 | - name: pixiv
1383 | shortcut: pv
1384 | engine: pixiv
1385 | disabled: true
1386 | inactive: true
1387 | pixiv_image_proxies:
1388 | - https://pximg.example.org
1389 | # A proxy is required to load the images. Hosting an image proxy server
1390 | # for Pixiv:
1391 | # --> https://pixivfe.pages.dev/hosting-image-proxy-server/
1392 | # Proxies from public instances. Ask the public instances owners if they
1393 | # agree to receive traffic from SearXNG!
1394 | # --> https://codeberg.org/VnPower/PixivFE#instances
1395 | # --> https://github.com/searxng/searxng/pull/3192#issuecomment-1941095047
1396 | # image proxy of https://pixiv.cat
1397 | # - https://i.pixiv.cat
1398 | # image proxy of https://www.pixiv.pics
1399 | # - https://pximg.cocomi.eu.org
1400 | # image proxy of https://pixivfe.exozy.me
1401 | # - https://pximg.exozy.me
1402 | # image proxy of https://pixivfe.ducks.party
1403 | # - https://pixiv.ducks.party
1404 | # image proxy of https://pixiv.perennialte.ch
1405 | # - https://pximg.perennialte.ch
1406 |
1407 | - name: podcastindex
1408 | engine: podcastindex
1409 | shortcut: podcast
1410 |
1411 | # Required dependency: psychopg2
1412 | # - name: postgresql
1413 | # engine: postgresql
1414 | # database: postgres
1415 | # username: postgres
1416 | # password: postgres
1417 | # limit: 10
1418 | # query_str: 'SELECT * from my_table WHERE my_column = %(query)s'
1419 | # shortcut : psql
1420 |
1421 | - name: presearch
1422 | engine: presearch
1423 | search_type: search
1424 | categories: [general, web]
1425 | shortcut: ps
1426 | timeout: 4.0
1427 | disabled: true
1428 |
1429 | - name: presearch images
1430 | engine: presearch
1431 | network: presearch
1432 | search_type: images
1433 | categories: [images, web]
1434 | timeout: 4.0
1435 | shortcut: psimg
1436 | disabled: true
1437 |
1438 | - name: presearch videos
1439 | engine: presearch
1440 | network: presearch
1441 | search_type: videos
1442 | categories: [general, web]
1443 | timeout: 4.0
1444 | shortcut: psvid
1445 | disabled: true
1446 |
1447 | - name: presearch news
1448 | engine: presearch
1449 | network: presearch
1450 | search_type: news
1451 | categories: [news, web]
1452 | timeout: 4.0
1453 | shortcut: psnews
1454 | disabled: true
1455 |
1456 | - name: pub.dev
1457 | engine: xpath
1458 | shortcut: pd
1459 | search_url: https://pub.dev/packages?q={query}&page={pageno}
1460 | paging: true
1461 | results_xpath: //div[contains(@class,"packages-item")]
1462 | url_xpath: ./div/h3/a/@href
1463 | title_xpath: ./div/h3/a
1464 | content_xpath: ./div/div/div[contains(@class,"packages-description")]/span
1465 | categories: [packages, it]
1466 | timeout: 3.0
1467 | disabled: true
1468 | first_page_num: 1
1469 | about:
1470 | website: https://pub.dev/
1471 | official_api_documentation: https://pub.dev/help/api
1472 | use_official_api: false
1473 | require_api_key: false
1474 | results: HTML
1475 |
1476 | - name: pubmed
1477 | engine: pubmed
1478 | shortcut: pub
1479 | timeout: 3.0
1480 |
1481 | - name: pypi
1482 | shortcut: pypi
1483 | engine: pypi
1484 |
1485 | - name: qwant
1486 | qwant_categ: web
1487 | engine: qwant
1488 | shortcut: qw
1489 | categories: [general, web]
1490 | additional_tests:
1491 | rosebud: *test_rosebud
1492 |
1493 | - name: qwant news
1494 | qwant_categ: news
1495 | engine: qwant
1496 | shortcut: qwn
1497 | categories: news
1498 | network: qwant
1499 |
1500 | - name: qwant images
1501 | qwant_categ: images
1502 | engine: qwant
1503 | shortcut: qwi
1504 | categories: [images, web]
1505 | network: qwant
1506 |
1507 | - name: qwant videos
1508 | qwant_categ: videos
1509 | engine: qwant
1510 | shortcut: qwv
1511 | categories: [videos, web]
1512 | network: qwant
1513 |
1514 | # - name: library
1515 | # engine: recoll
1516 | # shortcut: lib
1517 | # base_url: 'https://recoll.example.org/'
1518 | # search_dir: ''
1519 | # mount_prefix: /export
1520 | # dl_prefix: 'https://download.example.org'
1521 | # timeout: 30.0
1522 | # categories: files
1523 | # disabled: true
1524 |
1525 | # - name: recoll library reference
1526 | # engine: recoll
1527 | # base_url: 'https://recoll.example.org/'
1528 | # search_dir: reference
1529 | # mount_prefix: /export
1530 | # dl_prefix: 'https://download.example.org'
1531 | # shortcut: libr
1532 | # timeout: 30.0
1533 | # categories: files
1534 | # disabled: true
1535 |
1536 | - name: radio browser
1537 | engine: radio_browser
1538 | shortcut: rb
1539 |
1540 | - name: reddit
1541 | engine: reddit
1542 | shortcut: re
1543 | page_size: 25
1544 | disabled: true
1545 |
1546 | - name: right dao
1547 | engine: xpath
1548 | paging: true
1549 | page_size: 12
1550 | search_url: https://rightdao.com/search?q={query}&start={pageno}
1551 | results_xpath: //div[contains(@class, "description")]
1552 | url_xpath: ../div[contains(@class, "title")]/a/@href
1553 | title_xpath: ../div[contains(@class, "title")]
1554 | content_xpath: .
1555 | categories: general
1556 | shortcut: rd
1557 | disabled: true
1558 | about:
1559 | website: https://rightdao.com/
1560 | use_official_api: false
1561 | require_api_key: false
1562 | results: HTML
1563 |
1564 | - name: rottentomatoes
1565 | engine: rottentomatoes
1566 | shortcut: rt
1567 | disabled: true
1568 |
1569 | # Required dependency: redis
1570 | # - name: myredis
1571 | # shortcut : rds
1572 | # engine: redis_server
1573 | # exact_match_only: false
1574 | # host: '127.0.0.1'
1575 | # port: 6379
1576 | # enable_http: true
1577 | # password: ''
1578 | # db: 0
1579 |
1580 | # tmp suspended: bad certificate
1581 | # - name: scanr structures
1582 | # shortcut: scs
1583 | # engine: scanr_structures
1584 | # disabled: true
1585 |
1586 | - name: searchmysite
1587 | engine: xpath
1588 | shortcut: sms
1589 | categories: general
1590 | paging: true
1591 | search_url: https://searchmysite.net/search/?q={query}&page={pageno}
1592 | results_xpath: //div[contains(@class,'search-result')]
1593 | url_xpath: .//a[contains(@class,'result-link')]/@href
1594 | title_xpath: .//span[contains(@class,'result-title-txt')]/text()
1595 | content_xpath: ./p[@id='result-hightlight']
1596 | disabled: true
1597 | about:
1598 | website: https://searchmysite.net
1599 |
1600 | - name: sepiasearch
1601 | engine: sepiasearch
1602 | shortcut: sep
1603 |
1604 | - name: soundcloud
1605 | engine: soundcloud
1606 | shortcut: sc
1607 |
1608 | - name: stackoverflow
1609 | engine: stackexchange
1610 | shortcut: st
1611 | api_site: 'stackoverflow'
1612 | categories: [it, q&a]
1613 |
1614 | - name: askubuntu
1615 | engine: stackexchange
1616 | shortcut: ubuntu
1617 | api_site: 'askubuntu'
1618 | categories: [it, q&a]
1619 |
1620 | - name: internetarchivescholar
1621 | engine: internet_archive_scholar
1622 | shortcut: ias
1623 | timeout: 15.0
1624 |
1625 | - name: superuser
1626 | engine: stackexchange
1627 | shortcut: su
1628 | api_site: 'superuser'
1629 | categories: [it, q&a]
1630 |
1631 | - name: discuss.python
1632 | engine: discourse
1633 | shortcut: dpy
1634 | base_url: 'https://discuss.python.org'
1635 | categories: [it, q&a]
1636 | disabled: true
1637 |
1638 | - name: caddy.community
1639 | engine: discourse
1640 | shortcut: caddy
1641 | base_url: 'https://caddy.community'
1642 | categories: [it, q&a]
1643 | disabled: true
1644 |
1645 | - name: pi-hole.community
1646 | engine: discourse
1647 | shortcut: pi
1648 | categories: [it, q&a]
1649 | base_url: 'https://discourse.pi-hole.net'
1650 | disabled: true
1651 |
1652 | - name: searchcode code
1653 | engine: searchcode_code
1654 | shortcut: scc
1655 | disabled: true
1656 |
1657 | # - name: searx
1658 | # engine: searx_engine
1659 | # shortcut: se
1660 | # instance_urls :
1661 | # - http://127.0.0.1:8888/
1662 | # - ...
1663 | # disabled: true
1664 |
1665 | - name: semantic scholar
1666 | engine: semantic_scholar
1667 | disabled: true
1668 | shortcut: se
1669 |
1670 | # Spotify needs API credentials
1671 | # - name: spotify
1672 | # engine: spotify
1673 | # shortcut: stf
1674 | # api_client_id: *******
1675 | # api_client_secret: *******
1676 |
1677 | # - name: solr
1678 | # engine: solr
1679 | # shortcut: slr
1680 | # base_url: http://localhost:8983
1681 | # collection: collection_name
1682 | # sort: '' # sorting: asc or desc
1683 | # field_list: '' # comma separated list of field names to display on the UI
1684 | # default_fields: '' # default field to query
1685 | # query_fields: '' # query fields
1686 | # enable_http: true
1687 |
1688 | # - name: springer nature
1689 | # engine: springer
1690 | # # get your API key from: https://dev.springernature.com/signup
1691 | # # working API key, for test & debug: "a69685087d07eca9f13db62f65b8f601"
1692 | # api_key: 'unset'
1693 | # shortcut: springer
1694 | # timeout: 15.0
1695 |
1696 | - name: startpage
1697 | engine: startpage
1698 | shortcut: sp
1699 | timeout: 6.0
1700 | disabled: true
1701 | additional_tests:
1702 | rosebud: *test_rosebud
1703 |
1704 | - name: tokyotoshokan
1705 | engine: tokyotoshokan
1706 | shortcut: tt
1707 | timeout: 6.0
1708 | disabled: true
1709 |
1710 | - name: solidtorrents
1711 | engine: solidtorrents
1712 | shortcut: solid
1713 | timeout: 4.0
1714 | base_url:
1715 | - https://solidtorrents.to
1716 | - https://bitsearch.to
1717 |
1718 | # For this demo of the sqlite engine download:
1719 | # https://liste.mediathekview.de/filmliste-v2.db.bz2
1720 | # and unpack into searx/data/filmliste-v2.db
1721 | # Query to test: "!demo concert"
1722 | #
1723 | # - name: demo
1724 | # engine: sqlite
1725 | # shortcut: demo
1726 | # categories: general
1727 | # result_template: default.html
1728 | # database: searx/data/filmliste-v2.db
1729 | # query_str: >-
1730 | # SELECT title || ' (' || time(duration, 'unixepoch') || ')' AS title,
1731 | # COALESCE( NULLIF(url_video_hd,''), NULLIF(url_video_sd,''), url_video) AS url,
1732 | # description AS content
1733 | # FROM film
1734 | # WHERE title LIKE :wildcard OR description LIKE :wildcard
1735 | # ORDER BY duration DESC
1736 |
1737 | - name: tagesschau
1738 | engine: tagesschau
1739 | # when set to false, display URLs from Tagesschau, and not the actual source
1740 | # (e.g. NDR, WDR, SWR, HR, ...)
1741 | use_source_url: true
1742 | shortcut: ts
1743 | disabled: true
1744 |
1745 | - name: tmdb
1746 | engine: xpath
1747 | paging: true
1748 | categories: movies
1749 | search_url: https://www.themoviedb.org/search?page={pageno}&query={query}
1750 | results_xpath: //div[contains(@class,"movie") or contains(@class,"tv")]//div[contains(@class,"card")]
1751 | url_xpath: .//div[contains(@class,"poster")]/a/@href
1752 | thumbnail_xpath: .//img/@src
1753 | title_xpath: .//div[contains(@class,"title")]//h2
1754 | content_xpath: .//div[contains(@class,"overview")]
1755 | shortcut: tm
1756 | disabled: true
1757 |
1758 | # Requires Tor
1759 | - name: torch
1760 | engine: xpath
1761 | paging: true
1762 | search_url:
1763 | http://xmh57jrknzkhv6y3ls3ubitzfqnkrwxhopf5aygthi7d6rplyvk3noyd.onion/cgi-bin/omega/omega?P={query}&DEFAULTOP=and
1764 | results_xpath: //table//tr
1765 | url_xpath: ./td[2]/a
1766 | title_xpath: ./td[2]/b
1767 | content_xpath: ./td[2]/small
1768 | categories: onions
1769 | enable_http: true
1770 | shortcut: tch
1771 |
1772 | # torznab engine lets you query any torznab compatible indexer. Using this
1773 | # engine in combination with Jackett opens the possibility to query a lot of
1774 | # public and private indexers directly from SearXNG. More details at:
1775 | # https://docs.searxng.org/dev/engines/online/torznab.html
1776 | #
1777 | # - name: Torznab EZTV
1778 | # engine: torznab
1779 | # shortcut: eztv
1780 | # base_url: http://localhost:9117/api/v2.0/indexers/eztv/results/torznab
1781 | # enable_http: true # if using localhost
1782 | # api_key: xxxxxxxxxxxxxxx
1783 | # show_magnet_links: true
1784 | # show_torrent_files: false
1785 | # # https://github.com/Jackett/Jackett/wiki/Jackett-Categories
1786 | # torznab_categories: # optional
1787 | # - 2000
1788 | # - 5000
1789 |
1790 | # tmp suspended - too slow, too many errors
1791 | # - name: urbandictionary
1792 | # engine : xpath
1793 | # search_url : https://www.urbandictionary.com/define.php?term={query}
1794 | # url_xpath : //*[@class="word"]/@href
1795 | # title_xpath : //*[@class="def-header"]
1796 | # content_xpath: //*[@class="meaning"]
1797 | # shortcut: ud
1798 |
1799 | - name: unsplash
1800 | engine: unsplash
1801 | shortcut: us
1802 |
1803 | - name: yandex
1804 | engine: yandex
1805 | categories: general
1806 | search_type: web
1807 | shortcut: yd
1808 | disabled: true
1809 | inactive: true
1810 |
1811 | - name: yandex images
1812 | engine: yandex
1813 | categories: images
1814 | search_type: images
1815 | shortcut: ydi
1816 | disabled: true
1817 | inactive: true
1818 |
1819 | - name: yandex music
1820 | engine: yandex_music
1821 | shortcut: ydm
1822 | disabled: true
1823 | # https://yandex.com/support/music/access.html
1824 | inactive: true
1825 |
1826 | - name: yahoo
1827 | engine: yahoo
1828 | shortcut: yh
1829 | disabled: true
1830 |
1831 | - name: yahoo news
1832 | engine: yahoo_news
1833 | shortcut: yhn
1834 |
1835 | - name: youtube
1836 | shortcut: yt
1837 | # You can use the engine using the official stable API, but you need an API
1838 | # key See: https://console.developers.google.com/project
1839 | #
1840 | # engine: youtube_api
1841 | # api_key: 'apikey' # required!
1842 | #
1843 | # Or you can use the html non-stable engine, activated by default
1844 | engine: youtube_noapi
1845 |
1846 | - name: dailymotion
1847 | engine: dailymotion
1848 | shortcut: dm
1849 |
1850 | - name: vimeo
1851 | engine: vimeo
1852 | shortcut: vm
1853 |
1854 | - name: wiby
1855 | engine: json_engine
1856 | paging: true
1857 | search_url: https://wiby.me/json/?q={query}&p={pageno}
1858 | url_query: URL
1859 | title_query: Title
1860 | content_query: Snippet
1861 | categories: [general, web]
1862 | shortcut: wib
1863 | disabled: true
1864 | about:
1865 | website: https://wiby.me/
1866 |
1867 | - name: wikibooks
1868 | engine: mediawiki
1869 | weight: 0.5
1870 | shortcut: wb
1871 | categories: [general, wikimedia]
1872 | base_url: "https://{language}.wikibooks.org/"
1873 | search_type: text
1874 | disabled: true
1875 | about:
1876 | website: https://www.wikibooks.org/
1877 | wikidata_id: Q367
1878 |
1879 | - name: wikinews
1880 | engine: mediawiki
1881 | shortcut: wn
1882 | categories: [news, wikimedia]
1883 | base_url: "https://{language}.wikinews.org/"
1884 | search_type: text
1885 | srsort: create_timestamp_desc
1886 | about:
1887 | website: https://www.wikinews.org/
1888 | wikidata_id: Q964
1889 |
1890 | - name: wikiquote
1891 | engine: mediawiki
1892 | weight: 0.5
1893 | shortcut: wq
1894 | categories: [general, wikimedia]
1895 | base_url: "https://{language}.wikiquote.org/"
1896 | search_type: text
1897 | disabled: true
1898 | additional_tests:
1899 | rosebud: *test_rosebud
1900 | about:
1901 | website: https://www.wikiquote.org/
1902 | wikidata_id: Q369
1903 |
1904 | - name: wikisource
1905 | engine: mediawiki
1906 | weight: 0.5
1907 | shortcut: ws
1908 | categories: [general, wikimedia]
1909 | base_url: "https://{language}.wikisource.org/"
1910 | search_type: text
1911 | disabled: true
1912 | about:
1913 | website: https://www.wikisource.org/
1914 | wikidata_id: Q263
1915 |
1916 | - name: wikispecies
1917 | engine: mediawiki
1918 | shortcut: wsp
1919 | categories: [general, science, wikimedia]
1920 | base_url: "https://species.wikimedia.org/"
1921 | search_type: text
1922 | disabled: true
1923 | about:
1924 | website: https://species.wikimedia.org/
1925 | wikidata_id: Q13679
1926 | tests:
1927 | wikispecies:
1928 | matrix:
1929 | query: "Campbell, L.I. et al. 2011: MicroRNAs"
1930 | lang: en
1931 | result_container:
1932 | - not_empty
1933 | - ['one_title_contains', 'Tardigrada']
1934 | test:
1935 | - unique_results
1936 |
1937 | - name: wiktionary
1938 | engine: mediawiki
1939 | shortcut: wt
1940 | categories: [dictionaries, wikimedia]
1941 | base_url: "https://{language}.wiktionary.org/"
1942 | search_type: text
1943 | about:
1944 | website: https://www.wiktionary.org/
1945 | wikidata_id: Q151
1946 |
1947 | - name: wikiversity
1948 | engine: mediawiki
1949 | weight: 0.5
1950 | shortcut: wv
1951 | categories: [general, wikimedia]
1952 | base_url: "https://{language}.wikiversity.org/"
1953 | search_type: text
1954 | disabled: true
1955 | about:
1956 | website: https://www.wikiversity.org/
1957 | wikidata_id: Q370
1958 |
1959 | - name: wikivoyage
1960 | engine: mediawiki
1961 | weight: 0.5
1962 | shortcut: wy
1963 | categories: [general, wikimedia]
1964 | base_url: "https://{language}.wikivoyage.org/"
1965 | search_type: text
1966 | disabled: true
1967 | about:
1968 | website: https://www.wikivoyage.org/
1969 | wikidata_id: Q373
1970 |
1971 | - name: wikicommons.images
1972 | engine: wikicommons
1973 | shortcut: wc
1974 | categories: images
1975 | search_type: images
1976 | number_of_results: 10
1977 |
1978 | - name: wikicommons.videos
1979 | engine: wikicommons
1980 | shortcut: wcv
1981 | categories: videos
1982 | search_type: videos
1983 | number_of_results: 10
1984 |
1985 | - name: wikicommons.audio
1986 | engine: wikicommons
1987 | shortcut: wca
1988 | categories: music
1989 | search_type: audio
1990 | number_of_results: 10
1991 |
1992 | - name: wikicommons.files
1993 | engine: wikicommons
1994 | shortcut: wcf
1995 | categories: files
1996 | search_type: files
1997 | number_of_results: 10
1998 |
1999 | - name: wolframalpha
2000 | shortcut: wa
2001 | # You can use the engine using the official stable API, but you need an API
2002 | # key. See: https://products.wolframalpha.com/api/
2003 | #
2004 | # engine: wolframalpha_api
2005 | # api_key: ''
2006 | #
2007 | # Or you can use the html non-stable engine, activated by default
2008 | engine: wolframalpha_noapi
2009 | timeout: 6.0
2010 | categories: general
2011 | disabled: true
2012 |
2013 | - name: dictzone
2014 | engine: dictzone
2015 | shortcut: dc
2016 |
2017 | - name: mymemory translated
2018 | engine: translated
2019 | shortcut: tl
2020 | timeout: 5.0
2021 | # You can use without an API key, but you are limited to 1000 words/day
2022 | # See: https://mymemory.translated.net/doc/usagelimits.php
2023 | # api_key: ''
2024 |
2025 | # Required dependency: mysql-connector-python
2026 | # - name: mysql
2027 | # engine: mysql_server
2028 | # database: mydatabase
2029 | # username: user
2030 | # password: pass
2031 | # limit: 10
2032 | # query_str: 'SELECT * from mytable WHERE fieldname=%(query)s'
2033 | # shortcut: mysql
2034 |
2035 | # Required dependency: mariadb
2036 | # - name: mariadb
2037 | # engine: mariadb_server
2038 | # database: mydatabase
2039 | # username: user
2040 | # password: pass
2041 | # limit: 10
2042 | # query_str: 'SELECT * from mytable WHERE fieldname=%(query)s'
2043 | # shortcut: mdb
2044 |
2045 | - name: 1337x
2046 | engine: 1337x
2047 | shortcut: 1337x
2048 | disabled: true
2049 |
2050 | - name: duden
2051 | engine: duden
2052 | shortcut: du
2053 | disabled: true
2054 |
2055 | - name: seznam
2056 | shortcut: szn
2057 | engine: seznam
2058 | disabled: true
2059 |
2060 | # - name: deepl
2061 | # engine: deepl
2062 | # shortcut: dpl
2063 | # # You can use the engine using the official stable API, but you need an API key
2064 | # # See: https://www.deepl.com/pro-api?cta=header-pro-api
2065 | # api_key: '' # required!
2066 | # timeout: 5.0
2067 | # disabled: true
2068 |
2069 | - name: mojeek
2070 | shortcut: mjk
2071 | engine: mojeek
2072 | categories: [general, web]
2073 | disabled: true
2074 |
2075 | - name: mojeek images
2076 | shortcut: mjkimg
2077 | engine: mojeek
2078 | categories: [images, web]
2079 | search_type: images
2080 | paging: false
2081 | disabled: true
2082 |
2083 | - name: mojeek news
2084 | shortcut: mjknews
2085 | engine: mojeek
2086 | categories: [news, web]
2087 | search_type: news
2088 | paging: false
2089 | disabled: true
2090 |
2091 | - name: moviepilot
2092 | engine: moviepilot
2093 | shortcut: mp
2094 | disabled: true
2095 |
2096 | - name: naver
2097 | shortcut: nvr
2098 | categories: [general, web]
2099 | engine: xpath
2100 | paging: true
2101 | search_url: https://search.naver.com/search.naver?where=webkr&sm=osp_hty&ie=UTF-8&query={query}&start={pageno}
2102 | url_xpath: //a[@class="link_tit"]/@href
2103 | title_xpath: //a[@class="link_tit"]
2104 | content_xpath: //div[@class="total_dsc_wrap"]/a
2105 | first_page_num: 1
2106 | page_size: 10
2107 | disabled: true
2108 | about:
2109 | website: https://www.naver.com/
2110 | wikidata_id: Q485639
2111 | official_api_documentation: https://developers.naver.com/docs/nmt/examples/
2112 | use_official_api: false
2113 | require_api_key: false
2114 | results: HTML
2115 | language: ko
2116 |
2117 | - name: rubygems
2118 | shortcut: rbg
2119 | engine: xpath
2120 | paging: true
2121 | search_url: https://rubygems.org/search?page={pageno}&query={query}
2122 | results_xpath: /html/body/main/div/a[@class="gems__gem"]
2123 | url_xpath: ./@href
2124 | title_xpath: ./span/h2
2125 | content_xpath: ./span/p
2126 | suggestion_xpath: /html/body/main/div/div[@class="search__suggestions"]/p/a
2127 | first_page_num: 1
2128 | categories: [it, packages]
2129 | disabled: true
2130 | about:
2131 | website: https://rubygems.org/
2132 | wikidata_id: Q1853420
2133 | official_api_documentation: https://guides.rubygems.org/rubygems-org-api/
2134 | use_official_api: false
2135 | require_api_key: false
2136 | results: HTML
2137 |
2138 | - name: peertube
2139 | engine: peertube
2140 | shortcut: ptb
2141 | paging: true
2142 | # alternatives see: https://instances.joinpeertube.org/instances
2143 | # base_url: https://tube.4aem.com
2144 | categories: videos
2145 | disabled: true
2146 | timeout: 6.0
2147 |
2148 | - name: mediathekviewweb
2149 | engine: mediathekviewweb
2150 | shortcut: mvw
2151 | disabled: true
2152 |
2153 | - name: yacy
2154 | # https://docs.searxng.org/dev/engines/online/yacy.html
2155 | engine: yacy
2156 | categories: general
2157 | search_type: text
2158 | base_url:
2159 | - https://yacy.searchlab.eu
2160 | # see https://github.com/searxng/searxng/pull/3631#issuecomment-2240903027
2161 | # - https://search.kyun.li
2162 | # - https://yacy.securecomcorp.eu
2163 | # - https://yacy.myserv.ca
2164 | # - https://yacy.nsupdate.info
2165 | # - https://yacy.electroncash.de
2166 | shortcut: ya
2167 | disabled: true
2168 | # if you aren't using HTTPS for your local yacy instance disable https
2169 | # enable_http: false
2170 | search_mode: 'global'
2171 | # timeout can be reduced in 'local' search mode
2172 | timeout: 5.0
2173 |
2174 | - name: yacy images
2175 | engine: yacy
2176 | network: yacy
2177 | categories: images
2178 | search_type: image
2179 | shortcut: yai
2180 | disabled: true
2181 | # timeout can be reduced in 'local' search mode
2182 | timeout: 5.0
2183 |
2184 | - name: rumble
2185 | engine: rumble
2186 | shortcut: ru
2187 | base_url: https://rumble.com/
2188 | paging: true
2189 | categories: videos
2190 | disabled: true
2191 |
2192 | - name: livespace
2193 | engine: livespace
2194 | shortcut: ls
2195 | categories: videos
2196 | disabled: true
2197 | timeout: 5.0
2198 |
2199 | - name: wordnik
2200 | engine: wordnik
2201 | shortcut: def
2202 | base_url: https://www.wordnik.com/
2203 | categories: [dictionaries]
2204 | timeout: 5.0
2205 |
2206 | - name: woxikon.de synonyme
2207 | engine: xpath
2208 | shortcut: woxi
2209 | categories: [dictionaries]
2210 | timeout: 5.0
2211 | disabled: true
2212 | search_url: https://synonyme.woxikon.de/synonyme/{query}.php
2213 | url_xpath: //div[@class="upper-synonyms"]/a/@href
2214 | content_xpath: //div[@class="synonyms-list-group"]
2215 | title_xpath: //div[@class="upper-synonyms"]/a
2216 | no_result_for_http_status: [404]
2217 | about:
2218 | website: https://www.woxikon.de/
2219 | wikidata_id: # No Wikidata ID
2220 | use_official_api: false
2221 | require_api_key: false
2222 | results: HTML
2223 | language: de
2224 |
2225 | - name: seekr news
2226 | engine: seekr
2227 | shortcut: senews
2228 | categories: news
2229 | seekr_category: news
2230 | disabled: true
2231 |
2232 | - name: seekr images
2233 | engine: seekr
2234 | network: seekr news
2235 | shortcut: seimg
2236 | categories: images
2237 | seekr_category: images
2238 | disabled: true
2239 |
2240 | - name: seekr videos
2241 | engine: seekr
2242 | network: seekr news
2243 | shortcut: sevid
2244 | categories: videos
2245 | seekr_category: videos
2246 | disabled: true
2247 |
2248 | - name: sjp.pwn
2249 | engine: sjp
2250 | shortcut: sjp
2251 | base_url: https://sjp.pwn.pl/
2252 | timeout: 5.0
2253 | disabled: true
2254 |
2255 | - name: stract
2256 | engine: stract
2257 | shortcut: str
2258 | disabled: true
2259 |
2260 | - name: svgrepo
2261 | engine: svgrepo
2262 | shortcut: svg
2263 | timeout: 10.0
2264 | disabled: true
2265 |
2266 | - name: tootfinder
2267 | engine: tootfinder
2268 | shortcut: toot
2269 |
2270 | - name: voidlinux
2271 | engine: voidlinux
2272 | shortcut: void
2273 | disabled: true
2274 |
2275 | - name: wallhaven
2276 | engine: wallhaven
2277 | # api_key: abcdefghijklmnopqrstuvwxyz
2278 | shortcut: wh
2279 |
2280 | # wikimini: online encyclopedia for children
2281 | # The fulltext and title parameter is necessary for Wikimini because
2282 | # sometimes it will not show the results and redirect instead
2283 | - name: wikimini
2284 | engine: xpath
2285 | shortcut: wkmn
2286 | search_url: https://fr.wikimini.org/w/index.php?search={query}&title=Sp%C3%A9cial%3ASearch&fulltext=Search
2287 | url_xpath: //li/div[@class="mw-search-result-heading"]/a/@href
2288 | title_xpath: //li//div[@class="mw-search-result-heading"]/a
2289 | content_xpath: //li/div[@class="searchresult"]
2290 | categories: general
2291 | disabled: true
2292 | about:
2293 | website: https://wikimini.org/
2294 | wikidata_id: Q3568032
2295 | use_official_api: false
2296 | require_api_key: false
2297 | results: HTML
2298 | language: fr
2299 |
2300 | - name: wttr.in
2301 | engine: wttr
2302 | shortcut: wttr
2303 | timeout: 9.0
2304 |
2305 | - name: yummly
2306 | engine: yummly
2307 | shortcut: yum
2308 | disabled: true
2309 |
2310 | - name: brave
2311 | engine: brave
2312 | shortcut: br
2313 | time_range_support: true
2314 | paging: true
2315 | categories: [general, web]
2316 | brave_category: search
2317 | # brave_spellcheck: true
2318 |
2319 | - name: brave.images
2320 | engine: brave
2321 | network: brave
2322 | shortcut: brimg
2323 | categories: [images, web]
2324 | brave_category: images
2325 |
2326 | - name: brave.videos
2327 | engine: brave
2328 | network: brave
2329 | shortcut: brvid
2330 | categories: [videos, web]
2331 | brave_category: videos
2332 |
2333 | - name: brave.news
2334 | engine: brave
2335 | network: brave
2336 | shortcut: brnews
2337 | categories: news
2338 | brave_category: news
2339 |
2340 | # - name: brave.goggles
2341 | # engine: brave
2342 | # network: brave
2343 | # shortcut: brgog
2344 | # time_range_support: true
2345 | # paging: true
2346 | # categories: [general, web]
2347 | # brave_category: goggles
2348 | # Goggles: # required! This should be a URL ending in .goggle
2349 |
2350 | - name: lib.rs
2351 | shortcut: lrs
2352 | engine: lib_rs
2353 | disabled: true
2354 |
2355 | - name: sourcehut
2356 | shortcut: srht
2357 | engine: xpath
2358 | paging: true
2359 | search_url: https://sr.ht/projects?page={pageno}&search={query}
2360 | results_xpath: (//div[@class="event-list"])[1]/div[@class="event"]
2361 | url_xpath: ./h4/a[2]/@href
2362 | title_xpath: ./h4/a[2]
2363 | content_xpath: ./p
2364 | first_page_num: 1
2365 | categories: [it, repos]
2366 | disabled: true
2367 | about:
2368 | website: https://sr.ht
2369 | wikidata_id: Q78514485
2370 | official_api_documentation: https://man.sr.ht/
2371 | use_official_api: false
2372 | require_api_key: false
2373 | results: HTML
2374 |
2375 | - name: goo
2376 | shortcut: goo
2377 | engine: xpath
2378 | paging: true
2379 | search_url: https://search.goo.ne.jp/web.jsp?MT={query}&FR={pageno}0
2380 | url_xpath: //div[@class="result"]/p[@class='title fsL1']/a/@href
2381 | title_xpath: //div[@class="result"]/p[@class='title fsL1']/a
2382 | content_xpath: //p[contains(@class,'url fsM')]/following-sibling::p
2383 | first_page_num: 0
2384 | categories: [general, web]
2385 | disabled: true
2386 | timeout: 4.0
2387 | about:
2388 | website: https://search.goo.ne.jp
2389 | wikidata_id: Q249044
2390 | use_official_api: false
2391 | require_api_key: false
2392 | results: HTML
2393 | language: ja
2394 |
2395 | - name: bt4g
2396 | engine: bt4g
2397 | shortcut: bt4g
2398 |
2399 | - name: pkg.go.dev
2400 | engine: pkg_go_dev
2401 | shortcut: pgo
2402 | disabled: true
2403 |
2404 | # Doku engine lets you access to any Doku wiki instance:
2405 | # A public one or a privete/corporate one.
2406 | # - name: ubuntuwiki
2407 | # engine: doku
2408 | # shortcut: uw
2409 | # base_url: 'https://doc.ubuntu-fr.org'
2410 |
2411 | # Be careful when enabling this engine if you are
2412 | # running a public instance. Do not expose any sensitive
2413 | # information. You can restrict access by configuring a list
2414 | # of access tokens under tokens.
2415 | # - name: git grep
2416 | # engine: command
2417 | # command: ['git', 'grep', '{{QUERY}}']
2418 | # shortcut: gg
2419 | # tokens: []
2420 | # disabled: true
2421 | # delimiter:
2422 | # chars: ':'
2423 | # keys: ['filepath', 'code']
2424 |
2425 | # Be careful when enabling this engine if you are
2426 | # running a public instance. Do not expose any sensitive
2427 | # information. You can restrict access by configuring a list
2428 | # of access tokens under tokens.
2429 | # - name: locate
2430 | # engine: command
2431 | # command: ['locate', '{{QUERY}}']
2432 | # shortcut: loc
2433 | # tokens: []
2434 | # disabled: true
2435 | # delimiter:
2436 | # chars: ' '
2437 | # keys: ['line']
2438 |
2439 | # Be careful when enabling this engine if you are
2440 | # running a public instance. Do not expose any sensitive
2441 | # information. You can restrict access by configuring a list
2442 | # of access tokens under tokens.
2443 | # - name: find
2444 | # engine: command
2445 | # command: ['find', '.', '-name', '{{QUERY}}']
2446 | # query_type: path
2447 | # shortcut: fnd
2448 | # tokens: []
2449 | # disabled: true
2450 | # delimiter:
2451 | # chars: ' '
2452 | # keys: ['line']
2453 |
2454 | # Be careful when enabling this engine if you are
2455 | # running a public instance. Do not expose any sensitive
2456 | # information. You can restrict access by configuring a list
2457 | # of access tokens under tokens.
2458 | # - name: pattern search in files
2459 | # engine: command
2460 | # command: ['fgrep', '{{QUERY}}']
2461 | # shortcut: fgr
2462 | # tokens: []
2463 | # disabled: true
2464 | # delimiter:
2465 | # chars: ' '
2466 | # keys: ['line']
2467 |
2468 | # Be careful when enabling this engine if you are
2469 | # running a public instance. Do not expose any sensitive
2470 | # information. You can restrict access by configuring a list
2471 | # of access tokens under tokens.
2472 | # - name: regex search in files
2473 | # engine: command
2474 | # command: ['grep', '{{QUERY}}']
2475 | # shortcut: gr
2476 | # tokens: []
2477 | # disabled: true
2478 | # delimiter:
2479 | # chars: ' '
2480 | # keys: ['line']
2481 |
2482 | doi_resolvers:
2483 | oadoi.org: 'https://oadoi.org/'
2484 | doi.org: 'https://doi.org/'
2485 | doai.io: 'https://dissem.in/'
2486 | sci-hub.se: 'https://sci-hub.se/'
2487 | sci-hub.st: 'https://sci-hub.st/'
2488 | sci-hub.ru: 'https://sci-hub.ru/'
2489 |
2490 | default_doi_resolver: 'oadoi.org'
2491 |
```