mirror of
https://github.com/calibrain/shelfmark.git
synced 2026-09-24 19:30:30 +01:00
Enable multilingual search (#5)
This commit is contained in:
+3
-3
@@ -28,8 +28,8 @@ def search_books(query: str) -> List[BookInfo]:
|
||||
query_html = quote(query)
|
||||
url = (
|
||||
f"https://annas-archive.org/search?index=&page=1&display=table"
|
||||
f"&acc=aa_download&acc=external_download&lang={BOOK_LANGUAGE}&sort="
|
||||
f"&ext={'&ext='.join(SUPPORTED_FORMATS)}&lang={BOOK_LANGUAGE}&q={query_html}"
|
||||
f"&acc=aa_download&acc=external_download&sort="
|
||||
f"&ext={'&ext='.join(SUPPORTED_FORMATS)}&lang={'&lang='.join(BOOK_LANGUAGE)}&q={query_html}"
|
||||
)
|
||||
|
||||
html = network.html_get_page(url)
|
||||
@@ -266,4 +266,4 @@ def _get_download_url(link: str, title: str) -> Optional[str]:
|
||||
else:
|
||||
return download_links[0]['href']
|
||||
|
||||
return None
|
||||
return None
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
_SUPPORTED_BOOK_LANGUAGE = ['en','zh','ru','es','fr','de','it','pt','pl','bg','nl','ja','ar','he','hu','la','cs','ko','tr','uk','id','ro','el','lt','bn','zh‑Hant','af','ca','sv','th','hi','ga','lv','kn','sr','bo','da','fa','hr','sk','jv','vi','ur','fi','no','rw','ta','be','kk','mn','ka','sl','eo','gl','mr','fil','gu','ml','ky','qu','az','sw','ba','pa','ms','te','sq','ug','hy','shn']
|
||||
|
||||
# Directory settings
|
||||
BASE_DIR = Path(__file__).resolve().parent
|
||||
LOG_DIR = "/var/logs"
|
||||
@@ -30,6 +32,10 @@ SUPPORTED_FORMATS = os.getenv("SUPPORTED_FORMATS", "epub,mobi,azw3,fb2,djvu,cbz,
|
||||
SUPPORTED_FORMATS = SUPPORTED_FORMATS.split(",")
|
||||
|
||||
BOOK_LANGUAGE = os.getenv("BOOK_LANGUAGE", "en")
|
||||
BOOK_LANGUAGE = BOOK_LANGUAGE.lower().split(',')
|
||||
BOOK_LANGUAGE = [l for l in BOOK_LANGUAGE if l in _SUPPORTED_BOOK_LANGUAGE]
|
||||
if len(BOOK_LANGUAGE) == 0:
|
||||
BOOK_LANGUAGE = ['en']
|
||||
|
||||
# API settings
|
||||
FLASK_HOST = os.getenv("FLASK_HOST", "0.0.0.0")
|
||||
|
||||
Reference in New Issue
Block a user