From 4cf4c4dfe668b2452e649da422d9ad28d3a8cc33 Mon Sep 17 00:00:00 2001 From: cjwin2000 Date: Fri, 10 Jan 2025 20:14:17 -0500 Subject: [PATCH 1/4] Update config_sql.py --- cps/config_sql.py | 1 + 1 file changed, 1 insertion(+) diff --git a/cps/config_sql.py b/cps/config_sql.py index 7e7d033d1..1c816f277 100644 --- a/cps/config_sql.py +++ b/cps/config_sql.py @@ -117,6 +117,7 @@ class _Settings(_Base): config_use_goodreads = Column(Boolean, default=False) config_goodreads_api_key = Column(String) + config_googlebooks_api_key = Column(String, default='') config_register_email = Column(Boolean, default=False) config_login_type = Column(Integer, default=0) From 7e248909919d7a2f0fa1ddc87f3ce31ea281b520 Mon Sep 17 00:00:00 2001 From: cjwin2000 Date: Fri, 10 Jan 2025 20:20:08 -0500 Subject: [PATCH 2/4] Update admin.py --- cps/admin.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cps/admin.py b/cps/admin.py index 71403e6c3..88f80f106 100644 --- a/cps/admin.py +++ b/cps/admin.py @@ -1833,6 +1833,9 @@ def _configuration_update_helper(): services.goodreads_support.connect(config.config_goodreads_api_key, config.config_use_goodreads) + # Google Books API configuration + _config_string(to_save, "config_googlebooks_api_key") + _config_int(to_save, "config_updatechannel") # Reverse proxy login configuration From bf31e675db16ba109306a8ff84af51f5062f57e6 Mon Sep 17 00:00:00 2001 From: cjwin2000 Date: Fri, 10 Jan 2025 20:28:09 -0500 Subject: [PATCH 3/4] Update config_edit.html --- cps/templates/config_edit.html | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cps/templates/config_edit.html b/cps/templates/config_edit.html index 4018db2e9..ab8448b6c 100644 --- a/cps/templates/config_edit.html +++ b/cps/templates/config_edit.html @@ -163,6 +163,10 @@ {% endif %} +
+ + +
From dbf104787cc444845eb01e86170c268702fbcfb6 Mon Sep 17 00:00:00 2001 From: cjwin2000 Date: Fri, 10 Jan 2025 20:31:17 -0500 Subject: [PATCH 4/4] Update google.py --- cps/metadata_provider/google.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cps/metadata_provider/google.py b/cps/metadata_provider/google.py index df9c0dc24..63a0a9519 100644 --- a/cps/metadata_provider/google.py +++ b/cps/metadata_provider/google.py @@ -23,7 +23,7 @@ from datetime import datetime import requests -from cps import logger +from cps import logger, config from cps.isoLanguages import get_lang3, get_language_name from cps.services.Metadata import MetaRecord, MetaSourceInfo, Metadata @@ -38,6 +38,7 @@ class Google(Metadata): BOOK_URL = "https://books.google.com/books?id=" SEARCH_URL = "https://www.googleapis.com/books/v1/volumes?q=" ISBN_TYPE = "ISBN_13" + API_KEY = "&key=" + config.config_googlebooks_api_key def search( self, query: str, generic_cover: str = "", locale: str = "en" @@ -50,7 +51,7 @@ class Google(Metadata): tokens = [quote(t.encode("utf-8")) for t in title_tokens] query = "+".join(tokens) try: - results = requests.get(Google.SEARCH_URL + query) + results = requests.get(Google.SEARCH_URL + query + Google.API_KEY) results.raise_for_status() except Exception as e: log.warning(e)