Bloomberg Articles Scraper
Pricing
from $8.50 / 1,000 results
Bloomberg Articles Scraper
Fetches full Bloomberg news articles from a list of URLs -- headline, byline, full body text, publish/update dates, topics, tags and lead image. No account or browser required.
Pricing
from $8.50 / 1,000 results
Rating
0.0
(0)
Developer
Ibnu Adzim
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Get full Bloomberg news articles — headline, byline, complete body text, dates, section, topics and lead image — from a list of article URLs.
Why use this actor
- No account, login or API key required
- Returns the full article text, not just a headline and a snippet
- Byline, publish and update dates, section, related topics/tags and the lead image, all in one record
- Batch as many URLs as you want in a single run
- Automatic retries on a per-URL basis, so one stubborn page doesn't stall the rest of the batch
- Stable JSON output, ready to drop into a pipeline, database or spreadsheet
How it works
- You give it a list of Bloomberg article URLs.
- For each one, it reads the same structured article data Bloomberg's own page uses to render the story — headline, byline, full body text, dates, section, tags and lead image.
- If a page doesn't carry that full-text data, it falls back to the article's own summary tags, so you still get a usable record instead of nothing.
- Every URL you send in comes back as exactly one row: a filled-in article, or a short note explaining why that one couldn't be read.
No scrapers, browsers or blocked requests to babysit — point it at URLs and read the output.
Input
{"urls": ["https://www.bloomberg.com/news/articles/2026-04-09/stock-market-today-dow-s-p-live-updates"],"maxRetries": 3,"maxConcurrency": 3,"minRequestInterval": 0.5,"proxyConfiguration": {"useApifyProxy": false}}
| Field | Type | Default | Description |
|---|---|---|---|
urls | string[] | required | Bloomberg article URLs to fetch |
maxRetries | integer | 3 | Attempts per URL before it's reported as failed |
maxConcurrency | integer | 3 | Upper bound on URLs fetched at once |
minRequestInterval | number | 0.5 | Minimum seconds between request starts, independent of concurrency |
proxyConfiguration | object | off | Optional — this actor reaches Bloomberg directly and doesn't need a proxy to run; only useful for extra IP diversity across a very large batch |
Output
One row per URL. A successful fetch looks like this (body text and the tag list truncated below for readability — the real output is not):
{"_input": "https://www.bloomberg.com/news/articles/2026-04-09/stock-market-today-dow-s-p-live-updates","_source": "S1-nextdata","_scrapedAt": "2026-08-19T02:28:40Z","recordType": "ARTICLE","id": "TD8VVFKJH6V400","title": "US Stocks Halt Rally at End of Best Week in 2026: Markets Wrap","summary": "Wall Street traders bracing for talks between the US and Iran halted a rally in stocks as oil whipsawed, with the negotiations set to dictate the path ahead for a fragile ceasefire.","byline": "Rita Nazareth","authors": ["Rita Nazareth"],"longURL": "https://www.bloomberg.com/news/articles/2026-04-09/stock-market-today-dow-s-p-live-updates","brand": "markets","published": "2026-04-09T22:23:48.313Z","updatedAt": "2026-04-10T20:23:36.448Z","wordCount": 0,"premium": false,"type": "article","bodyText": "Wall Street traders bracing for talks between the US and Iran halted a rally in stocks as oil whipsawed, with the negotiations set to dictate the path ahead for a fragile ceasefire.\n\nWhile the S&P 500 saw its best week since November, the gauge lost steam after a seven-day advance. Earlier gains were driven by roughly in-line inflation data. US crude settled below $97, posting its biggest weekly slide since 2020…","topics": [],"contentTags": [{ "id": "stocks", "name": "Stocks", "type": "Topic", "derivedScore": 7.52 },{ "id": "IR", "name": "Iran", "type": "Country", "derivedScore": 4.66 },"… 55 more"],"contentLength": 4220}
A URL that couldn't be read comes back the same shape, with an error note instead of article fields:
{"_input": "https://www.bloomberg.com/news/articles/2000-01-01/this-article-does-not-exist-xyz-abc","_source": "none","_scrapedAt": "2026-08-19T02:26:03Z","recordType": "ERROR","_error": "extraction_failed","_errorDetail": "HTTP 404 (259,084b) via safari2601 carried no recognizable article"}
| Field | Type | Description |
|---|---|---|
title | string | Article headline |
summary | string | Article summary / description |
byline | string | Byline text |
authors | string[] | Author names |
bodyText | string | Full article body as plain text |
published / updatedAt | string | Publish / last-update time (ISO 8601) |
longURL | string | Canonical article URL |
brand | string | Bloomberg section (markets, technology, politics, …) |
premium | boolean | Whether the article is behind Bloomberg's paywall |
wordCount | integer | Word count, when Bloomberg reports one |
topics / contentTags | array | Related topics and tags, each with a relevance score |
ledeImage | object | Lead image: url, alt, caption, credit (present when the article has one) |
contentLength | integer | Character count of bodyText |
recordType | string | ARTICLE or ERROR |
_source | string | Which data layer on the page produced this record |
_error / _errorDetail | string | Present only on a failed URL, explaining why |
Notes
- One row per input URL, always — a failure never disappears silently, it comes back as an
ERRORrow naming the URL and the reason. - Paywalled articles are still attempted; some return full text, others only the summary and metadata Bloomberg exposes publicly (
premium: trueon those rows). contentTagscan run to 50+ entries on a heavily-tagged story — that's real data from Bloomberg's own tagging, not a bug.