Bing:搜索 - 只匹配精确文本字符串?

7
我正在使用PHP和Bing API搜索特定的域名。我只想得到完全匹配的结果。但是,Bing返回了不完全匹配的结果。当我搜索 "www.gebouw.nl" 时,有时还会得到例如 "www.gprgebouw.nl" 的结果。是否有办法告诉Bing只搜索完全匹配的结果?

7
你已经谷歌搜索过这个问题了吗? - cohensh
5
@cohensh,你是在讽刺吗? - Kirk Woll
是的,我不知道如何帮忙,所以我只能发表一些希望有用的评论。 - cohensh
2
我在谷歌上搜索了这个问题,这个帖子是第一个结果 @cohensh - Paul
3个回答

4

不好意思,在必应上还是无法运行。您可以在标准的必应网站上进行测试。当您搜索+"www.gebouw.nl"时,您也会得到:www.ge-bouw.nl等内容。 - Dylan
1
加号对我来说似乎有效。无论您的搜索词是否带引号。 - Andrew
1
我要注意的是,在2022年,使用+引用字符串确实对我有用,如果我不使用+,Bing网站将无法找到某些内容。尽管这个问题最初是关于API的,但这帮助了我在bing.com网站上的使用,也可能会帮助其他人,所以谢谢。 (我甚至尝试了Dylan上面提供的示例,那也起作用,并没有显示ge-bouw.nl...但我意识到那个评论是11年前的,事情可能已经改变了,在bing或该网站上,影响它出现在结果中。) - charlie arehart

1

WebSearchOptions='DisableQueryAlterations' 是否是解决问题的关键? 根据 API 文档,“DisableQueryAlterations 防止必应更改查询字符串。这种更改可能是为了纠正原始查询字符串中的拼写错误。”


-1

制定您的查询:

要搜索特定域中的结果,请使用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"])

请参考以下文档: https://learn.microsoft.com/zh-cn/azure/cognitive-services/bing-web-search/filter-answers - Praneeth Kalluri

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接