Столкновение с ограничениями при использовании исключения URL с помощью системы пользовательского поиска и JSON API - PullRequest
0 голосов
/ 01 мая 2020

Я разрабатываю Python скрипт для получения результатов поиска в Google с учетом набора запросов. Я создал систему пользовательского поиска и использую JSON API для запроса результатов поиска. Чтобы улучшить качество работы моих пользователей, мне нужно исключить некоторые URL-адреса из списка сайтов, основанного на их предыдущих результатах поиска.

Этот список обновляется на лету, каждый раз, когда пользователь делает новый запрос, что делает невозможным использование инструмента «исключение сайтов» на панели управления CSE, поскольку это ручная операция.

К счастью, JSON API предоставляет аргумент для разделения сайтов для исключения в виде строки, которая принимает следующую форму:

search_eng_res = build("customsearch", "v1", developerKey=google_api_key).cse()
response = search_eng_res.list(q=query, cx=search_engine_key,
                               siteSearch=blacklist_str, siteSearchFilter="e").execute()

где blacklist_str выглядит например: blacklist_str = "url1.com url2.com url3.com"

Моя проблема в том, что эта функция ограничена максимум 26 различными URL-адресами. Я сделал тесты, используя запрос из 5 слов и список из 148 URL для исключения, и только первые 26 сайтов были отфильтрованы в ответе, который я получил. Я пробовал разные формы URL-адресов, например: url1.com / , www.url1.*, www.url1.com*, но я не могу заставить его исключить все 148 URL-адресов ...

Я знаю, что система пользовательского поиска может быть настроена на исключение 2000 URL, но я ничего не читал об ограничениях этой функции JSON API.

У кого-то возникла такая же проблема? Любая информация об этом ограничении? Любая идея преодолеть это?

Ура :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...