5 Commits

Author SHA1 Message Date
Ivan Gabaldon
26a2f16649 Revert "[upd] pypi: Bump the minor group across 1 directory with 3 updates (#…"
This reverts commit e8e710e42a.
2026-08-12 01:32:55 +02:00
dependabot[bot]
e8e710e42a [upd] pypi: Bump the minor group across 1 directory with 3 updates (#6495)
Bumps the minor group with 3 updates in the / directory: [typer](https://github.com/fastapi/typer), [wlc](https://github.com/WeblateOrg/wlc) and [granian](https://github.com/emmett-framework/granian).


Updates `typer` from 0.27.0 to 0.27.1
- [Release notes](https://github.com/fastapi/typer/releases)
- [Changelog](https://github.com/fastapi/typer/blob/master/docs/release-notes.md)
- [Commits](https://github.com/fastapi/typer/compare/0.27.0...0.27.1)

Updates `wlc` from 2.1.0 to 2.1.1
- [Release notes](https://github.com/WeblateOrg/wlc/releases)
- [Changelog](https://github.com/WeblateOrg/wlc/blob/main/CHANGES.rst)
- [Commits](https://github.com/WeblateOrg/wlc/compare/2.1.0...2.1.1)

Updates `granian` from 2.7.9 to 2.8.0
- [Release notes](https://github.com/emmett-framework/granian/releases)
- [Commits](https://github.com/emmett-framework/granian/compare/v2.7.9...v2.8.0)

---
updated-dependencies:
- dependency-name: typer
  dependency-version: 0.27.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: minor
- dependency-name: wlc
  dependency-version: 2.1.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor
- dependency-name: granian
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-11 17:45:08 +02:00
dependabot[bot]
7b0c7f0bf8 [upd] github-actions: Bump docker/login-action from 4.5.2 to 4.6.0 (#6493)
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.5.2 to 4.6.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](371161bbe7...dbcb813823)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-11 17:38:34 +02:00
github-actions[bot]
e033be7c7c [l10n] update translations from Weblate (#6496)
8f9804206 - 2026-08-03 - Aindriú Mac Giolla Eoin <aindriu80@noreply.codeberg.org>
6850566e7 - 2026-08-04 - mvtbh <mvtbh@noreply.codeberg.org>
f97257801 - 2026-08-01 - ShinyDust <shinydust@noreply.codeberg.org>

Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-08-11 17:37:46 +02:00
Bnyro
0a118066d8 [feat] engines: add jina (general) 2026-08-10 14:14:33 +02:00
10 changed files with 159 additions and 52 deletions

View File

@@ -50,7 +50,7 @@ jobs:
steps:
- name: Login to GHCR
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
with:
registry: "ghcr.io"
username: "${{ github.repository_owner }}"
@@ -110,7 +110,7 @@ jobs:
steps:
- name: Login to GHCR
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
with:
registry: "ghcr.io"
username: "${{ github.repository_owner }}"
@@ -144,14 +144,14 @@ jobs:
steps:
- name: Login to Docker Hub
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
with:
registry: "docker.io"
username: "${{ secrets.DOCKER_USER }}"
password: "${{ secrets.DOCKER_TOKEN }}"
- name: Login to GHCR
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
with:
registry: "ghcr.io"
username: "${{ github.repository_owner }}"

View File

@@ -0,0 +1,8 @@
.. _jina engine:
===========
Jina Engine
===========
.. automodule:: searx.engines.jina
:members:

89
searx/engines/jina.py Normal file
View File

@@ -0,0 +1,89 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""Jina is a search AI and part of Elastic, the company behind ElasticSearch.
The engine requires an API key, you can get one from the
`API dashboard <https://jina.ai/api-dashboard/>`_ without signup.
.. code:: yaml
- name: jina
engine: jina
shortcut: ji
api_key: "jina_..."
jina_engine: reader
inactive: false
By default, Jina's own index is used. You can change that by setting a different :py:obj:`jina_engine`.
"""
import typing as t
from urllib.parse import urlencode
from dateutil import parser
from searx.result_types import EngineResults
if t.TYPE_CHECKING:
from searx.extended_types import SXNG_Response
from searx.search.processors import OnlineParams
about = {
"website": "https://jina.ai",
"wikidata_id": None,
"official_api_documentation": "https://s.jina.ai/docs",
"use_official_api": True,
"require_api_key": True,
"results": "JSON",
}
categories = ["general"]
paging = True
jina_engine = "reader"
"""Search mode. Currently supported values are 'reader', 'google' and 'bing'."""
base_url = "https://s.jina.ai"
api_key: str | None = None
def setup(_):
if not api_key:
raise ValueError("missing api key")
def request(query: str, params: "OnlineParams"):
# setting 'no-content' pushes the response time down to a third
args = {"q": query, "page": params["pageno"], "engine": jina_engine, "respondWith": "no-content"}
params["url"] = f"{base_url}/?{urlencode(args)}"
params["headers"].update(
{
"Accept": "application/json",
"Authorization": f"Bearer {api_key}",
}
)
def response(resp: "SXNG_Response"):
res = EngineResults()
json_resp: dict[str, t.Any] = resp.json()
result: dict[str, str]
for result in json_resp["data"]:
published_date = None
if result.get("date"):
try:
published_date = parser.parse(result["date"])
except parser.ParserError:
pass
res.add(
res.types.MainResult(
url=result["url"],
title=result["title"],
content=result["description"],
publishedDate=published_date,
)
)
return res

View File

@@ -1411,6 +1411,12 @@ engines:
shortcut: iq
disabled: true
- name: jina
engine: jina
shortcut: ji
api_key: ""
inactive: true
# - name: kagi
# engine: kagi
# categories: [general, web]

View File

@@ -25,21 +25,23 @@
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
# ehsanrs2 <ehsanrs2@noreply.codeberg.org>, 2025.
# Artiman <artiman@noreply.codeberg.org>, 2025.
# mvtbh <mvtbh@noreply.codeberg.org>, 2026.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
"PO-Revision-Date: 2026-05-19 12:07+0000\n"
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
"PO-Revision-Date: 2026-08-04 12:25+0000\n"
"Last-Translator: mvtbh <mvtbh@noreply.codeberg.org>\n"
"Language: fa_IR\n"
"Language-Team: Persian "
"<https://translate.codeberg.org/projects/searxng/searxng/fa/>\n"
"Language-Team: Persian <https://translate.codeberg.org/projects/searxng/"
"searxng/fa/>\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.18.0\n"
"X-Generator: Weblate 2026.7.1\n"
#. CONSTANT_NAMES['NO_SUBGROUPING']
#: searx/searxng.msg
@@ -449,47 +451,47 @@ msgstr ""
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Light snow"
msgstr ""
msgstr "برف خفیف"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Snow and thunder"
msgstr ""
msgstr "برف و رعد و برق"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Snow showers and thunder"
msgstr ""
msgstr "رگبار برف و رعد و برق"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Snow showers"
msgstr ""
msgstr "رگبار برف"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Snow"
msgstr ""
msgstr "برف"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Heavy snow and thunder"
msgstr ""
msgstr "برف سنگین و رعد و برق"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Heavy snow showers and thunder"
msgstr ""
msgstr "رگبار برف سنگین و رعد و برق"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Heavy snow showers"
msgstr ""
msgstr "رگبار شدید برف"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Heavy snow"
msgstr ""
msgstr "برف سنگین"
#. SOCIAL_MEDIA_TERMS['SUBSCRIBERS']
#: searx/engines/lemmy.py:85 searx/searxng.msg
@@ -2406,4 +2408,3 @@ msgstr "پنهان‌سازی ویدئو"
#~ msgid "Engine"
#~ msgstr "موتور"

View File

@@ -11,18 +11,18 @@ msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
"PO-Revision-Date: 2026-05-05 12:37+0000\n"
"Last-Translator: Aindriú Mac Giolla Eoin <aindriu80@noreply.codeberg.org>"
"\n"
"PO-Revision-Date: 2026-08-04 12:25+0000\n"
"Last-Translator: Aindriú Mac Giolla Eoin <aindriu80@noreply.codeberg.org>\n"
"Language: ga\n"
"Language-Team: Irish "
"<https://translate.codeberg.org/projects/searxng/searxng/ga/>\n"
"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 "
":(n>6 && n<11) ? 3 : 4;\n"
"Language-Team: Irish <https://translate.codeberg.org/projects/searxng/"
"searxng/ga/>\n"
"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 :(n>"
"6 && n<11) ? 3 : 4;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.18.0\n"
"X-Generator: Weblate 2026.7.1\n"
#. CONSTANT_NAMES['NO_SUBGROUPING']
#: searx/searxng.msg
@@ -1646,11 +1646,11 @@ msgstr "Réiteach"
#: searx/templates/simple/result_templates/images.html:55
msgid "Image formats"
msgstr ""
msgstr "Formáidí íomhá"
#: searx/templates/simple/result_templates/images.html:56
msgid "original format"
msgstr ""
msgstr "formáid bhunaidh"
#: searx/templates/simple/result_templates/images.html:64
msgid "View source"
@@ -1969,4 +1969,3 @@ msgstr "físeán a cheilt"
#~ msgid "Engine"
#~ msgstr "Inneall"

View File

@@ -24,22 +24,24 @@
# ngf <ngf@noreply.codeberg.org>, 2025.
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
# omeritzics <omeritzics@noreply.codeberg.org>, 2026.
# ShinyDust <shinydust@noreply.codeberg.org>, 2026.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
"PO-Revision-Date: 2026-05-19 12:07+0000\n"
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
"PO-Revision-Date: 2026-08-02 00:25+0000\n"
"Last-Translator: ShinyDust <shinydust@noreply.codeberg.org>\n"
"Language: he\n"
"Language-Team: Hebrew "
"<https://translate.codeberg.org/projects/searxng/searxng/he/>\n"
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 "
"&& n % 10 == 0) ? 2 : 3));\n"
"Language-Team: Hebrew <https://translate.codeberg.org/projects/searxng/"
"searxng/he/>\n"
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
"n % 10 == 0) ? 2 : 3));\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.18.0\n"
"X-Generator: Weblate 2026.7.1\n"
#. CONSTANT_NAMES['NO_SUBGROUPING']
#: searx/searxng.msg
@@ -394,17 +396,17 @@ msgstr "שלג קל"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Sleet and thunder"
msgstr ""
msgstr "שלג ורעמים"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Sleet showers and thunder"
msgstr ""
msgstr "ממטרי שלג ורעמים"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Sleet showers"
msgstr ""
msgstr "ממטרי שלג"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
@@ -444,7 +446,7 @@ msgstr "ממטרי שלג קלים ורעמים"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Light snow showers"
msgstr ""
msgstr "ממטרי שלג קלים"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
@@ -454,17 +456,17 @@ msgstr "שלג קל"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Snow and thunder"
msgstr ""
msgstr "שלג ורעמים"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Snow showers and thunder"
msgstr ""
msgstr "ממטרי שלג ורעמים"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
msgid "Snow showers"
msgstr ""
msgstr "ממטרי שלג"
#. WEATHER_CONDITIONS
#: searx/searxng.msg
@@ -655,7 +657,7 @@ msgstr "חשב {func} של הארגומנטים"
#: searx/engines/boardreader.py:108
#, python-brace-format
msgid "Posted by {author}"
msgstr ""
msgstr "פורסם על ידי {author}"
#: searx/engines/openstreetmap.py:155
msgid "Show route in map .."
@@ -743,7 +745,7 @@ msgstr "מחשבון"
#: searx/plugins/calculator.py:26
msgid "Parses and solves mathematical expressions."
msgstr ""
msgstr "מנתח ופותר ביטויים מתמטיים."
#: searx/plugins/hash_plugin.py:33
msgid "Hash plugin"
@@ -754,6 +756,8 @@ msgid ""
"Converts strings to different hash digests. Available functions: md5, "
"sha1, sha224, sha256, sha384, sha512."
msgstr ""
"ממיר מחרוזות ל- hash digests שונים. פונקציות זמינות: md5, sha1, sha224, "
"sha256, sha384, sha512."
#: searx/plugins/hash_plugin.py:63
msgid "hash digest"
@@ -983,14 +987,15 @@ msgid ""
"This is a preview of the settings used by the 'Search URL' you used to "
"get here."
msgstr ""
"זוהי תצוגה מקדימה של ההגדרות ב- 'כתובת URL לחיפוש' בהן השתמשת כדי להגיע לכאן."
#: searx/templates/simple/preferences.html:158
msgid "Press save to copy these preferences to your browser."
msgstr ""
msgstr "לחץ על שמור כדי להעתיק את ההעדפות הללו לדפדפן שלך."
#: searx/templates/simple/preferences.html:159
msgid "Click here to view your browser preferences instead:"
msgstr ""
msgstr "לחץ כאן כדי להציג את העדפות הדפדפן שלך במקום:"
#: searx/templates/simple/preferences.html:169
msgid "General"
@@ -1333,7 +1338,7 @@ msgstr "השלמה אוטומטית"
#: searx/templates/simple/preferences/autocomplete.html:15
msgid "Show possible queries as you type"
msgstr ""
msgstr "הצג שאילתות אפשריות תוך כדי הקלדה"
#: searx/templates/simple/preferences/center_alignment.html:2
msgid "Center Alignment"
@@ -1351,7 +1356,7 @@ msgstr "זוהי רשימת העוגיות וערכיהן אשר SearXNG מאח
#: searx/templates/simple/preferences/cookies.html:3
msgid "With this list, you can assess the transparency of SearXNG."
msgstr ""
msgstr "בעזרת רשימה זו, תוכלו להעריך את השקיפות של SearXNG."
#: searx/templates/simple/preferences/cookies.html:9
msgid "Cookie name"
@@ -1642,11 +1647,11 @@ msgstr "רזולוציה"
#: searx/templates/simple/result_templates/images.html:55
msgid "Image formats"
msgstr ""
msgstr "פורמטי תמונה"
#: searx/templates/simple/result_templates/images.html:56
msgid "original format"
msgstr ""
msgstr "פורמט מקורי"
#: searx/templates/simple/result_templates/images.html:64
msgid "View source"
@@ -2373,4 +2378,3 @@ msgstr "הסתר וידאו"
#~ msgid "Engine"
#~ msgstr "מנוע"