BingNewsSearchAPI를 사용하여 특정 뉴스 목록 보기

소개



ruby에서 BingNewsSearchAPI를 사용하여 특정 뉴스 목록을 보는 방법

전제



· Microsoft Azure 계정에 로그인했습니다.

리소스 만들기



먼저 Azure 계정 검색 창에서 Bing Search v7 를 검색하여 리소스를 만드는 페이지로 이동합니다.





입력 항목에 임의의 값을 넣어 자원을 작성합니다.

이제 키와 엔드포인트가 표시되므로 보관하십시오.

루비로 처리 추가



bing_news_search.rb
require 'net/https'
require 'uri'
require 'json'

accessKey = "先程取得したキーを入力"

uri  = "https://api.bing.microsoft.com/"
path = "/v7.0/news/search"
count = "2"

term = "Microsoft"

uri = URI(uri + path + "?count=" + count + "&q=" + URI.escape(term))

request = Net::HTTP::Get.new(uri)
request['Ocp-Apim-Subscription-Key'] = accessKey

response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
    http.request(request)
end

puts "\nJSON Response:\n\n"
puts JSON::pretty_generate(JSON(response.body))
require 'net/https'
require 'uri'
require 'json'

먼저 위의 코드 파일을 가져옵니다.
accessKey = "先程取得したキーを入力"

uri  = "https://api.bing.microsoft.com/"
path = "/v7.0/news/search"
count = "2"

term = "Microsoft"
accessKey 에는 이전에 취득한 키를 대입합니다.
uri 는 api 엔드포인트를 할당하고 path 에는 뉴스 검색 URL을 포함합니다.
count 는 기사의 취득수를 설정합니다. 기본값은 10개입니다.
term 는 검색할 단어를 넣습니다.
uri = URI(uri + path + "?count=" + count + "&q=" + URI.escape(term))

request = Net::HTTP::Get.new(uri)
request['Ocp-Apim-Subscription-Key'] = accessKey

response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
    http.request(request)
end

이전 변수를 사용하여 URL을 만들고 api를 두드리십시오.
puts "\nJSON Response:\n\n"
puts JSON::pretty_generate(JSON(response.body))

돌아온 JSON의 응답을 해석해 출력하고 있습니다.

이전 파일을 ruby ​​명령으로 실행합니다.
$ bundle exec ruby bing_news_search.rb

실제 실행 결과는 다음과 같습니다.
JSON Response:

{
  "_type": "News",
  "readLink": "https://api.bing.microsoft.com/api/v7/news/search?q=Microsoft",
  "queryContext": {
    "originalQuery": "Microsoft",
    "adultIntent": false
  },
  "totalEstimatedMatches": 32,
  "sort": [
    {
      "name": "最も一致する結果",
      "id": "relevance",
      "isSelected": true,
      "url": "https://api.bing.microsoft.com/api/v7/news/search?q=Microsoft"
    },
    {
      "name": "最新",
      "id": "date",
      "isSelected": false,
      "url": "https://api.bing.microsoft.com/api/v7/news/search?q=Microsoft&sortby=date"
    }
  ],
  "value": [
    {
      "name": "AZPower 「Web アプリケーションの Microsoft Azure への最新化」分野で ...",
      "url": "https://japan.cnet.com/release/30569532/",
      "image": {
        "thumbnail": {
          "contentUrl": "https://www.bing.com/th?id=OVFT.9SmEaCzGrZPBD74eFfWwNi&pid=News",
          "width": 600,
          "height": 315
        }
      },
      "description": "「Microsoft Azure への Windows Server と SQL Server の移行」に続いて2つ目となる、Advanced Specializationの取得となります AZPower株式会社(本社:東京都千代田区/代表取締役社長 橋口 信平、以下AZPower)は、2021年7月6日、マイクロソフトがGoldコンピテンシーパートナー向けに高度な専門性を有する企業として「Adv",
      "about": [
        {
          "readLink": "https://api.bing.microsoft.com/api/v7/entities/cf3abf7d-e379-2693-f765-6da6b9fa9149",
          "name": "Windows Azure"
        }
      ],
      "provider": [
        {
          "_type": "Organization",
          "name": "CNET",
          "image": {
            "thumbnail": {
              "contentUrl": "https://www.bing.com/th?id=AR_813fbe5ed7179eb7f517fd9bab6522f9&pid=news"
            }
          }
        }
      ],
      "datePublished": "2021-07-15T00:52:00.0000000Z",
      "category": "ScienceAndTechnology"
    },
    {
      "name": "マイクロソフトがWindows 365を公開-コンピューティングの新しい ...",
      "url": "https://www.sanspo.com/geino/news/20210715/prl21071510170047-n1.html",
      "image": {
        "thumbnail": {
          "contentUrl": "https://www.bing.com/th?id=OVFT.s9nOmSHw4aHPf68X2QpXpy&pid=News",
          "width": 700,
          "height": 367
        }
      },
      "description": "マイクロソフト コーポレーション(Microsoft Corp.)は15日、Windows 10ないしはWindows 11(利用可能になった場合)を体験する新しい方法をあらゆる規模の企業に導入するクラウドサービスWindows 365を発表した。Windows 365は、オペレーティングシステム(OS)をマイクロソフトクラウドに取り込み、アプリ、データ、セッティングのすべてのWindows体験を",
      "about": [
        {
          "readLink": "https://api.bing.microsoft.com/api/v7/entities/16aeb6d9-9098-0a40-4970-8e46a4fcee12",
          "name": "Microsoft Windows"
        }
      ],
      "provider": [
        {
          "_type": "Organization",
          "name": "SANSPO"
        }
      ],
      "datePublished": "2021-07-15T01:17:00.0000000Z",
      "category": "ScienceAndTechnology"
    }
  ]
}


공식 문서



Bing Web Search API란 무엇입니까? - Azure Cognitive Services

좋은 웹페이지 즐겨찾기