惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
阮一峰的网络日志
阮一峰的网络日志
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件
博客园 - 司徒正美
Last Week in AI
Last Week in AI
爱范儿
爱范儿
罗磊的独立博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
雷峰网
雷峰网
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
WordPress大学
WordPress大学
Jina AI
Jina AI
人人都是产品经理
人人都是产品经理
量子位
V
V2EX
博客园 - 叶小钗
宝玉的分享
宝玉的分享
T
Tailwind CSS Blog

SerpApi

How to scrape Google Play Store app reviews Scrape YouTube Channel Data with SerpApi How to scrape movie and TV results from the Google Play Store SerpApi Weekly Changelog: Sep 07 - 13, 2026 Introducing MCP Bundle Support for SerpApi SerpApi Weekly Changelog: Aug 31 - Sep 06, 2026 We Have Resolved the Google /goto URL Redirect Rollout How to scrape Zillow Reddit promised its users an open internet. Then it closed the door. SerpApi Weekly Changelog: August 24 - 30, 2026 Best web scraping tools in 2026 Google’s New /goto Redirect URLs: Resolution in Progress How to Scrape Walmart Reviews Results Understanding HTTP 429: Too Many Requests Google tried again. We’re moving to dismiss a second time. SerpApi Weekly Changelog: August 17 - 23, 2026 Introducing SerpApi's New Markdown Output SerpApi Surpasses 1.5 Million Activated User Accounts How a Lead Generation Company Scaled Outreach with SerpApi's Google Maps API SerpApi Weekly Changelog: August 10 - 16, 2026 How to scrape book results from the Google Play Store What is an API? Part 3: Dynamic Data Displays with D&D! We Filed an Amicus Brief in U.S. v. Google How to scrape Google Play Store game information SerpApi Weekly Changelog: August 03 - 09, 2026 Introducing SerpApi Search Tools: Real-Time Web Search for Python AI Agents Measuring World Cup Attention: What the data says about Vozinha SerpApi Weekly Changelog: July 27 - August 02, 2026 How to Scrape Google Maps Autocomplete Build an AI Event Discovery Agent That Adds Events to Your Calendar in One Click
How to scrape Bing News search results
Corbin Davenport · 2026-06-03 · via SerpApi

Bing News is a powerful news aggregation platform, with the ability to find relevant articles from broadcast media, local news sources, blogs, and other websites. It works much like Google News and DuckDuckGo News, but Bing might pick up stories the others don't find.

With the Bing News API from SerpApi, news searches are accessible in simple JSON format. SerpApi handles the proxy network, HTML parsing, captcha puzzles, and other challenges, so you can spend less time on scraping tools, and more time on your actual business or project.

What can you scrape from Bing News?

Each news article in the search results contains a title, external link, text snippet, publish date, source name (like "CNN" or "Reuters"), and thumbnail image. The articles grouped together in cards are available as events items in the JSON results.

Screenshot of search for Marvel news, with the page next to its JSON results.
SerpApi fetches and parses Bing News search results into structured JSON.

Getting started with SerpApi

You need a free SerpApi account to use the Bing News API. SerpApi also has endpoints to search Google News and DuckDuckGo News, along with more general-purpose search engines like Google Search, Bing Search, DuckDuckGo, and others. You can upgrade to a paid account later if you need more search capacity, faster speeds, or other features.

First, you need to create an account and verify your email and other details. After that, get the API key from your account dashboard.

You should store your API key in a safe location if you are sharing or publishing your code. If the key is leaked or stolen, you can regenerate it from the SerpApi account dashboard.

Install the SerpApi library (optional)

You can use SerpApi's official libraries for Python, JavaScript, Ruby, Java, and other languages. They provide a simple wrapper around the API requests.

You can also use a simple GET request, using cURL, fetch() in Node.js, and other similar methods. This guide will cover both the GET method and several of the official integrations.

Review the Bing News API documentation

Each API at SerpApi has extensive documentation that covers all the supported parameters and filters, code examples for popular languages, and example JSON responses. This post will cover the basics, but you can learn more at the Bing News API page.

Bing News Engine Results API - SerpApi

Use SerpApi’s Bing News Results API to scrape Bing News results. Search in market locations and in specific time and date ranges.

SerpApiSerpApi

The only required parameter is q for the search query, but you can optionally specify the search region, pagination, and other settings.

How to scrape Bing News search results

If you have your API key, you're ready to start pulling data from Bing News searches. No matter how you're accessing SerpApi, the API results will be identical.

GET request

This performs a search for "Paris" with Bing News in a simple GET request, with no other settings specified:

https://serpapi.com/search.json?engine=bing_news&q=paris&api_key=API_KEY_GOES_HERE

This is the same "Paris" search query, but with the mkt parameter set to France, so the results are tailored to a French audience:

https://serpapi.com/search.json?engine=bing_news&q=paris&mkt=fr-FR&api_key=API_KEY_GOES_HERE

You can also use SerpApi's JSON Restrictor feature to trim the API response to specific values. This searches for "Berlin" and only returns the title and link for each result:

https://serpapi.com/search.json?engine=bing_news&q=berlin&json_restrictor=organic_results[].{title,link}&api_key=API_KEY_GOES_HERE

This can be helpful if you need more efficient parsing, or if you're using an LLM with a limited context window.

Python

This uses the official SerpApi Python library to search for "Toronto" in Bing News with a US market region, then displays the source and title of each result:

import serpapi

client = serpapi.Client(api_key=YOUR_KEY_GOES_HERE)
results = client.search({
  "engine": "bing_news",
  "mkt": "en-US",
  "q": "toronto"
})

for item in results["organic_results"]:
    print(f"{item["source"]} - {item["title"]}")

You could also sort the article results by publisher, using the source value in each article's object:

import serpapi

client = serpapi.Client(api_key=YOUR_KEY_GOES_HERE)
results = client.search({
  "engine": "bing_news",
  "mkt": "en-US",
  "q": "toronto"
})

# Sort the results by publisher
sortedResults = {}
for item in results["organic_results"]:
    if not sortedResults.get(item["source"]):
       sortedResults[item["source"]] = []
    sortedResults[item["source"]].append(item)

# Print the results in sections
for source in sortedResults:
    print(f"\n{source}\n====")
    for article in sortedResults[source]:
        print(f"{article["title"]}")

Ruby

Here's how to search for "Atlanta" with Bing News in the US region, using the official Ruby gem for SerpApi, and display the source and title of each result:

require "serpapi"

client = SerpApi::Client.new(
    engine: "bing_news",
    q: "atlanta",
    mlt: "en-US",
    api_key: YOUR_KEY_GOES_HERE
)

for item in client.search[:organic_results] do
    puts "#{item[:source]} - #{item[:title]}"
end

This searches for "Atlanta" and sorts the results into groups, based on the article's publisher:

require "serpapi"

client = SerpApi::Client.new(
    engine: "bing_news",
    q: "atlanta",
    mlt: "en-US",
    api_key: YOUR_KEY_GOES_HERE
)

# Group results by source, then sort alphabetically by source name
grouped_results = client.search[:organic_results].group_by { |r| r[:source] }.sort

# Print the results in sections
grouped_results.each do |source, items|
    puts source
    puts "===="
    items.each { |item| puts item[:title] }
    puts ""
end

JavaScript and Node.js

This uses the official SerpApi JavaScript library to run a Bing News search for "Seattle" and show each result:

import { getJson } from 'serpapi';

const search = await getJson({
    engine: "bing_news",
    q: "seattle",
    mkt: "en-US",
    api_key: YOUR_KEY_GOES_HERE
});

search.organic_results.forEach(function (item) {
    console.log(`${item.source} - ${item.title}`)
})

This is the same "Atlanta" search again, but with all the articles sorted by publisher, using the source value in each article result:

import { getJson } from 'serpapi';

const search = await getJson({
    engine: "bing_news",
    q: "Atlanta",
    mkt: "en-US",
    api_key: YOUR_KEY_GOES_HERE
});

// Sort the results by publisher
let sortedResults = {};
search.organic_results.forEach(function (result) {
    sortedResults[result.source] = (sortedResults[result.source] || []);
    sortedResults[result.source].push(result);
})

// Show the results in sections
Object.keys(sortedResults).forEach(function (source) {
    console.log(`\n${source}\n====`);
    sortedResults[source].forEach(function (article) {
        console.log(article["title"]);
    })
})

cURL

Here's how to search for "Richmond" with Bing News and the US market region in a cURL request:

curl --get https://serpapi.com/search \
 -d engine="bing_news" \
 -d q="Richmond" \
 -d mkt="en-US" \
 -d api_key="YOUR_KEY_GOES_HERE"

Other languages and no-code solutions

You can still use the API directly with GET requests, even if there isn't an official SerpApi integration for your preferred environment or language. SerpApi also works with Make.com, N8N, and other tools.

Conclusion

Bing's news search is a powerful tool for finding relevant and timely news coverage on nearly any topic. With the Bing News API from SerpApi, you can access all of those results programmatically in simple JSON format.

If results from Bing News aren't ideal for your needs, SerpApi also offers APIs for Google News (with a Light version for quicker searches) and DuckDuckGo News.

If you need help using SerpApi, please contact us.