API пользовательского поиска Google сложные условия поиска

Программа, которую я пишу, должна выполнять сложные поисковые запросы. Примером может быть

(синий И джинсы И НЕ (дешево || дорого)). Как я могу это сделать. Я знаю, что есть такие параметры, как hq и exclude и orTerms (или просто логический оператор), но я не знаю, как их комбинировать и можно ли их комбинировать, если на то пошло.

Огромное спасибо


person Alkis Kalogeris    schedule 14.03.2013    source источник


Ответы (1)


Параметры описаны здесь.

q (строка)
Выражение поиска.

exactTerms (строка)
Определяет фразу, которую должны содержать все документы в результатах поиска.

excludeTerms (строка)
Определяет слово или фразу, которые не должны появляться ни в одном документе в результатах поиска.

orTerms (string)
Предоставляет дополнительные условия поиска для проверки в документе, где каждый документ в результатах поиска должен содержать хотя бы одно из дополнительных условий поиска.

Различные логические операторы описаны здесь.

И
includeTerms=(phrase%20one).(phrase%20two)

НЕ
q=key1%20(-key2)

ИЛИ
excludeTerms=key1|key2
orTerms=key1|key2

()
lr=-(lang_fr|lang_it)

При этом вы можете вызвать q=john%20doe&orTerms=wikipedia|imdb, и это приведет к документам, содержащим john AND doe AND ( wikipedia OR imbd ).

Чего я не ожидал, так это того, что q=&exactTerms=(john).(doe).(wikipedia) (46 результатов) возвращает то же, что и q="john%20doe%20wikipedia" (46 результатов). Я думал, что это приведет к тому же результату, что и q="john"%20"doe"%20"wikipedia" (153000 результатов). Так что иногда это скорее оператор CONCAT, чем оператор AND, или exactTerms просто не может поддерживать несколько ключевых слов.

person mgutt    schedule 25.03.2015
comment
Я никогда не проверял xml API, так как он предназначен только для коммерческих пользователей, но кажется, что они предлагают ту же функциональность в отношении orTerms. Я удалил свой ответ, так как он мало что предлагает после вашего. Не стесняйтесь удалить ссылку, которую вы делаете на мой ответ - person Alkis Kalogeris; 25.03.2015
comment
Спасибо, это очень полезно - person Lola; 20.04.2016
comment
@mgutt: Знаете ли вы, повышает ли orTerms рейтинг запроса? Если я включу 100 терминов в orTerms, будет ли он первым ранжировать документ с наиболее пересекающимися терминами? - person pg2455; 04.04.2017