我正在使用PHP和Bing API搜索特定的域名。我只想得到完全匹配的结果。但是,Bing返回了不完全匹配的结果。当我搜索 "www.gebouw.nl" 时,有时还会得到例如 "www.gprgebouw.nl" 的结果。是否有办法告诉Bing只搜索完全匹配的结果?
WebSearchOptions='DisableQueryAlterations' 是否是解决问题的关键? 根据 API 文档,“DisableQueryAlterations 防止必应更改查询字符串。这种更改可能是为了纠正原始查询字符串中的拼写错误。”
制定您的查询:
要搜索特定域中的结果,请使用site:
运算符,后跟域名。例如,如果您想仅在域“example.com”上搜索“cats”,则查询如下所示:cats site:example.com
以下是Python示例代码
import requests
subscription_key = "YOUR_SUBSCRIPTION_KEY"
search_term = "cats site:example.com"
endpoint = "https://api.cognitive.microsoft.com/bing/v7.0/search"
headers = {
"Ocp-Apim-Subscription-Key": subscription_key
}
params = {
"q": search_term,
"count": 50, # number of results per request, up to 50
"offset": 0, # index of the first result to return, useful for pagination
"mkt": "en-US" # market to use for the search, for example, "en-US"
}
response = requests.get(endpoint, headers=headers, params=params)
search_results = response.json()
for result in search_results["webPages"]["value"]:
print(result["name"], result["url"])