The fastest way to start scraping China’s #1 search engine. Structured JSON for the Baidu web SERP — with the real target URL on every result, not Baidu’s redirect wrapper — plus news search, image search with dimensions, and autocomplete. Anti-bot bypass built in. No Baidu account.
No credit card required · PAYG credits never expire
# One page of the Baidu web SERP
import scrapebadger
client = scrapebadger.ScrapeBadger("sb_live_...")
serp = client.baidu.search(
query="小米手机",
language=2,
){
"position": 1,
"title": "小米手机官方网站",
"url": "https://www.mi.com/",
"display_url": "www.mi.com",
"source": "小米商城",
"date": "2026-07-14",
"total_results": 4820000
}Structured JSON responses with normalized data models. No HTML parsing. No proxy management. No Baidu account.
/v1/baidu/search/v1/baidu/news/v1/baidu/images/v1/baidu/autocomplete/v1/baidu/healthAll fields are normalized from Baidu’s own page data — no HTML for you to parse. Organic results carry the resolved destination URL rather than the redirect token Baidu serves, so a result is immediately usable as a crawl target or a join key.
positionintegerRank on the page, 1-based, sponsored placements excludedtitlestringResult headline as Baidu renders iturlstringThe REAL destination URL — resolved, not Baidu’s baidu.com/link?url= wrapperdisplay_urlstringThe shortened URL Baidu shows under the titlesnippetstringResult description textsourcestringPublisher or site name Baidu attributes the result todatestringPublication date when Baidu shows onethumbnailstringPreview image URL when the result carries onerelated_searchesarrayThe "相关搜索" suggestions at the foot of the SERPtotal_resultsintegerBaidu’s own estimate of matching documentstitlestringArticle headline (news) or image caption (images)urlstringReal article URL, resolved past the redirectsourcestringPublisher name for news, source page for imagesdatestringPublication date — sort by time to get newest firstimage_urlstringFull-resolution image URLthumbnail_urlstringBaidu-hosted thumbnail, cheap to fetch in bulkwidth / heightintegerPixel dimensions, so you can filter by resolution before downloadingsuggestionsarrayAutocomplete terms for a partial queryBaidu is one index, not per-country storefronts, so there is no market parameter to manage. What you choose instead is script: all results, simplified Chinese only, or traditional Chinese only.
No proxy setup. No session management. No anti-bot configuration.
Call any Baidu endpoint with your API key — a query to search web, news or images, or a partial term for autocomplete. REST or SDK.
ScrapeBadger routes the request through a clean exit with Chrome impersonation, detects blocks, resolves every redirect URL, and escalates to a real browser when needed.
Receive normalized JSON with positions, real target URLs, snippets, sources, dates, image dimensions and related searches — ready to store or analyse.
Scraping Baidu gives you the search layer of the Chinese web — what ranks, what the news cycle is saying, and the query variants real users type.
Track where a domain ranks on Baidu for your keyword set over time. Baidu is where Chinese search demand actually lands, and its ranking factors are not Google’s.
Watch which sites Baidu surfaces for your brand and your competitors’, and catch a new entrant or a negative result appearing on page one.
Mine autocomplete suggestions and the related-searches block to build a Chinese keyword list from what users actually type, not from translation.
Read the Chinese-language web at scale — news coverage, product mentions and local sites that never appear in Western search results.
Collect Chinese-language search results, news text and captioned images with dimensions for retrieval, classification and multimodal training.
Pull Baidu News by query, ordered newest first, to feed Chinese-language coverage into a monitoring or sentiment pipeline.
You only pay for successful responses — failed requests are always free. PAYG credits never expire; volume subscription tiers reduce per-credit cost further.
| Endpoint | Credits / request | PAYG | Subscription |
|---|---|---|---|
Web Search /search | 5 credits | — | — |
News Search /news | 5 credits | — | — |
Image Search /images | 5 credits | — | — |
Autocomplete /autocomplete | 1 credit | — | — |
Health /health | Free | — | — |
See the full plan comparison on the pricing page — subscription tiers step down per-credit cost beyond the cheapest column shown above.
ScrapeBadger's Baidu Scraper API handles everything Baidu throws at automated requests — so your pipeline keeps running.
Baidu links every organic result through baidu.com/link?url=… — a token that expires and tells you nothing. We resolve every one, so the url field is the actual destination you can crawl, dedupe and join against your own data.
The 相关搜索 suggestions at the foot of the SERP come back as a plain array. It is the cheapest source of real Chinese query variants there is, and it needs no separate request.
The language filter maps to Baidu’s own ct parameter: all results, simplified only, or traditional only. Useful when you care about mainland results and not Taiwan or Hong Kong ones, or the reverse.
Image results carry width and height alongside the full-resolution URL and the thumbnail, so you can filter by resolution without fetching a single byte of image data.
Bound a query with a from and to date to get results Baidu dated inside that window — for tracking when coverage of a topic started, or excluding stale pages.
Baidu’s own developer APIs need a verified mainland account. This one needs a ScrapeBadger key. Proxies, exits and anti-bot handling are ours to manage, not yours.
Get started in minutes with Python, Node.js, or plain HTTP requests.
The scrapebadger Node.js library wraps the Baidu API with typed methods. Install with npm install scrapebadger, then start scraping Baidu in a few lines of code.
import ScrapeBadger from 'scrapebadger'
const client = new ScrapeBadger({ apiKey: 'sb_live_...' })
// Simplified-Chinese results, 50 to a page
const { organic_results, related_searches } = await client.baidu.search({
query: '小米手机',
num: 50,
language: 2,
})
// url is the REAL destination, not baidu.com/link?url=...
for (const r of organic_results) {
console.log(r.position, r.url, r.title)
}
console.log(related_searches) // Chinese query variants, free with the SERPimport ScrapeBadger from 'scrapebadger'
const client = new ScrapeBadger({ apiKey: 'sb_live_...' })
// Newest Chinese coverage first
const news = await client.baidu.news({
query: '人工智能',
sort: 'time',
})
for (const a of news.articles) {
console.log(a.date, a.source, a.title, a.url)
}
// Images come with dimensions — filter before downloading
const { images } = await client.baidu.images({ query: '长城' })
const large = images.filter((i) => i.width >= 1920)Common questions about scraping Baidu with the API — Python, Node.js, or REST.
No. You only need a ScrapeBadger API key. Baidu’s own APIs require a verified mainland Chinese account, often with a local phone number and business registration — none of that is involved here.
The real one. Baidu wraps every organic result in a baidu.com/link?url= redirect with an expiring token. We resolve each link before returning it, so the url field is the actual destination — and display_url is kept alongside it if you want what Baidu showed the user.
Either works — Baidu indexes both. Chinese queries return far richer results because that is where its index is deepest. The language parameter controls script rather than query language: 1 for all results, 2 for simplified Chinese only, 3 for traditional Chinese only.
Web search returns 10 per page by default and up to 50 with the num parameter. Image search returns about 30 a page. Page through with the page parameter — each page is one request.
It returns a 422 and costs you nothing. Credits are only deducted for successful responses, so you never pay for a block or a retry.
Per-request credit costs are listed above. For higher monthly volume, subscription tiers reduce the per-credit rate substantially. All Baidu endpoints — web search, news, images and autocomplete — are included on every plan.
1,000 free credits. No credit card. Get your API key in under a minute.
PAYG credits never expire · Pay only for successful requests · Chinese-language web