Bing Web Search API を使用して、Bing.com で情報を検索しています。ただし、一部の検索クエリでは、目的に関係のない Web サイトを検索から取得しています。
たとえば、検索クエリがこの夏に読む本である場合、Bing は結果としてyoutube.com
またはamazon.com
を返すことがあります。ただし、このような種類の Web サイトを検索結果に表示したくありません。そのため、検索を開始する前に、この種の Web サイトをブロックしたいと考えています。
ここに私のサンプルコードがあります:
params = {
"mkt": "en-US",
"setLang": "en-US",
"textDecorations": False,
"textFormat": "raw",
"responseFilter": "Webpages",
"q": "books to read this summer",
"count": 20
}
headers = {
"Ocp-Apim-Subscription-Key": MY_APY_KEY_HERE,
"Accept": "application/json",
"Retry-After": "1",
}
response = requests.get(WEB_SEARCH, headers=headers, params=params, timeout=15)
response.raise_for_status()
search_data = response.json()
search_data変数には、応答オブジェクトを反復せずにブロックしたいリンクが含まれています。特に、Bing が結果に youtube と amazon を含めないようにしたいです。
どんな助けでも大歓迎です。
編集: WEB_SEARCHは Web 検索エンドポイントです