Bet365 Live Odds & In-Play Data Scraper
Pricing
from $1.00 / 1,000 in-play odds line extracteds
Bet365 Live Odds & In-Play Data Scraper
Scrape live Bet365 in-play betting odds, running scores, and pre-match lines across soccer, basketball, tennis, baseball, hockey, esports and more. Clean structured rows with Asian handicaps, over/under totals and match timers. Export directly to JSON, CSV or Excel.
Pricing
from $1.00 / 1,000 in-play odds line extracteds
Rating
0.0
(0)
Developer
SIÁN OÜ
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
4 days ago
Last modified
Categories
Share
Bet365 Live Odds & In-Play Data Scraper — Live Betting Odds, Spreads & Scores ⚡
🎉 Real-time Bet365 in-play odds, match spreads, over/under totals and pre-match market lines in one actor — with running scores and zero API keys
Built for quant bettors, line shoppers, tipsters, and sports modeling teams who need live in-play data without maintaining brittle browser automations
🔎 What is the Bet365 Live Odds & In-Play Data Scraper — and when should you use it?
The Bet365 Live Odds & In-Play Data Scraper turns live in-play odds, match spreads, over/under totals and pre-match market lines from Bet365 into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. No account, no portal API key, no browser automation to maintain.
Use it when you need: extracting real-time Bet365 betting odds, live in-play lines, match running scores, and closing line values across soccer, basketball, tennis, baseball, and American football.
Use something else when: you need multi-bookmaker odds aggregation across 60+ sportsbooks (FanDuel, DraftKings, Pinnacle, Betfair). Use Sports Betting Odds Scraper for multi-bookmaker market comparison across 60+ global sportsbooks. Use Football API Scraper for European and global soccer match analytics, lineups and player stats. Use this actor when you specifically need Bet365 in-play or pre-match odds and running match lines.
🤖 Use with AI agents
Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/bet365-live-odds-scraper
Your agent can pay for its own runs. This Actor is eligible for agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — without an Apify account or API token of its own. Billing is the same either way: per successful row, never for errors.
Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:
I want extract live Bet365 in-play and pre-match betting odds, handicap lines, and match scores using the Apify Actor `sian.agency/bet365-live-odds-scraper`.Use it when I need: extracting real-time Bet365 betting odds, live in-play lines, match running scores, and closing line values across soccer, basketball, tennis, baseball, and American football.Don't use it when: you need multi-bookmaker odds aggregation across 60+ sportsbooks (FanDuel, DraftKings, Pinnacle, Betfair) — use sports-betting-odds-scraper or football-api-scraper instead.How to call it: choose `operation` (`inplay`, `prematch`, `sports`, or `event_detail`) and select your target `sport` (e.g. `soccer`, `basketball`, `tennis`).Start with this input:{"operation": "inplay","sport": "soccer","oddsFormat": "decimal"}Ask me which sport or Bet365 event ID you want to pull live in-play odds for, then run the Actor and summarise the results as a table.
Things you can ask your agent for:
- Scrape live in-play soccer odds and running match scores from Bet365.
- Extract pre-match basketball odds and point spreads from Bet365.
- List all currently active live in-play sports on Bet365.
Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/bet365-live-odds-scraper.md.
📋 Overview
Extract real-time Bet365 odds without fighting bot mitigation or maintaining browser scrapers. The Bet365 Live Odds & In-Play Data Scraper delivers direct access to Bet365's global in-play and pre-match betting feeds across soccer, basketball, tennis, baseball, ice hockey, volleyball, table tennis, rugby, handball, horse racing, and esports.
Every match row unrolls Bet365's native market groups into clean, structured records — giving you exact moneyline odds (1X2), Asian handicaps, over/under goal lines, corner markets, running match timers, and live scores.
Why quantitative sports teams choose this actor:
- ⚡ True Live In-Play Streams: Real-time odds updates, live running scoreboards, and match minute timestamps for in-progress fixtures.
- 🎯 Deep Market Group Unrolling: 1X2 Full-Time Result, Asian Handicap lines, Over/Under totals, Both Teams to Score (BTTS), and Corner markets.
- 🏈 Multi-Sport Coverage: 13 sports including Soccer, NBA/EuroLeague Basketball, ATP/WTA Tennis, MLB, NHL, and competitive Esports.
- 🔢 Dual Odds Format: Native Decimal (1.95, 3.40) or American (-105, +240) odds format conversion out of the box.
- 💰 Pay-Per-Event (PPE) Pricing: Transparent per-line pricing starting at $0.001–$0.002, a generous free trial tier, and zero charges on empty or failed queries.
- 📊 Visual SIÁN Ledger Dashboard: Instant
report.htmlrun report with hero KPIs, sample record inspection JSON, and structured preview tables.
✨ Features
- ⚡ Live In-Play Odds: Extract active matches in progress with live running scores, game minute, and current betting lines.
- 📅 Pre-Match Leagues & Fixtures: Upcoming scheduled games with opening and current market prices across 13 sports.
- 🔍 Deep Event Detail & Props: Pass any Bet365 event ID to pull full betting boards and player props.
- 🏆 Live Sports Directory: Inspect all active sports categories and in-play match counts currently streaming.
- 📊 Comprehensive Market Unrolling: Asian lines, European 3-way handicaps, over/under goal lines, and both teams to score.
- 🛡️ Zero-Waste Charging: Charges are applied per successfully extracted betting line. Failed queries are never charged.
- 📤 Instant Multi-Format Export: Download datasets directly as JSON, CSV, or Excel for spreadsheets, Pandas, or database ingestion.
🎬 Quick Start
Pick an operation, pick your sport, and run. Each run produces one clean dataset you can export to JSON, CSV or Excel. Start with Sports Directory to see active in-play sports, then pull Live In-Play Odds.
curl -X POST "https://api.apify.com/v2/acts/sian.agency~bet365-live-odds-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"operation": "inplay", "sport": "soccer", "oddsFormat": "decimal"}'
🚀 Getting Started (3 Simple Steps)
Step 1: Choose an operation
- Live In-Play Odds (
inplay): Real-time odds, scores, and match minute for live games in progress. - Pre-Match Odds (
prematch): Upcoming tournament fixtures and opening/closing lines. - Event Detail (
event_detail): All market groups and props for a specific Bet365 match ID. - Sports Directory (
sports): Discover which sports have live events running right now.
Step 2: Set your sport and odds format
Select your sport (soccer, basketball, tennis, baseball, ice_hockey, table_tennis, esports, etc.) and choose Decimal or American odds format.
Step 3: Run and collect
Start the run and export the dataset in CSV, JSON, or Excel straight from the Apify Console.
That's it! In under a minute, you'll have:
- Live in-play odds lines with the exact handicap/spread attached
- Running scores and game minute timestamps
- A clean, joinable dataset keyed by Bet365 event ID
📥 Input Configuration
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
operation | string | Yes | inplay | inplay (Live Odds), prematch (Upcoming), sports (Directory), or event_detail (Match Props) |
sport | string | No | soccer | soccer, basketball, tennis, baseball, american_football, ice_hockey, volleyball, table_tennis, rugby_union, rugby_league, handball, esports, horse_racing, or all |
eventId | string | No | "" | Specific match fixture ID (required when operation is event_detail) |
oddsFormat | string | No | decimal | decimal (e.g. 1.95) or american (e.g. -105, +240) |
Example — Live In-Play Soccer Odds:
{"operation": "inplay","sport": "soccer","oddsFormat": "decimal"}
Example — Upcoming Pre-Match Basketball Fixtures:
{"operation": "prematch","sport": "basketball","oddsFormat": "american"}
Example — Event Detail & Props:
{"operation": "event_detail","sport": "soccer","eventId": "149821034"}
📤 Output
Results are saved to the Apify dataset as flat, curated rows. Live In-Play Odds emits one row per match × market × outcome:
| Field | Type | Description |
|---|---|---|
status | string | success or error |
_operation | string | Operation that generated the row (inplay, prematch, sports) |
sport | string | Sport category (e.g. Soccer, Basketball) |
league | string | Competition name (e.g. UEFA Champions League, NBA) |
eventId | string | Unique Bet365 event fixture identifier |
homeTeam | string | Home team / player name |
awayTeam | string | Away team / player name |
matchTime | string | Current in-play match minute or scheduled kickoff time |
currentScore | string | Running score (e.g. 1 - 1) |
marketName | string | Market type (e.g. Fulltime Result, Asian Handicap, Match Goals) |
selection | string | Outcome choice (e.g. Real Madrid, Over 2.5, Draw) |
odds | string | Current price in requested format (2.10 or +110) |
handicap | string | Spread or goal line if applicable (e.g. -0.5, 2.5) |
isInPlay | boolean | true for live games, false for pre-match |
capturedAt | string | ISO-8601 UTC timestamp of price capture |
Example row (JSON):
{"_operation": "inplay","_fetchedAt": "2026-08-16T14:30:00.123Z","status": "success","sport": "Soccer","league": "UEFA Champions League","eventId": "149821034","homeTeam": "Real Madrid","awayTeam": "Bayern Munich","matchTime": "68'","currentScore": "1 - 1","marketName": "Fulltime Result","selection": "Real Madrid","odds": "2.10","handicap": null,"isInPlay": true,"capturedAt": "2026-08-16T14:30:00.123Z"}
💼 Use Cases & Workflows
1. Live In-Play Arbitrage & Line Shopping
Compare live Bet365 in-play prices with Pinnacle, Betfair Exchange, and FanDuel. Feed odds into automated alert bots when market discrepancies appear.
2. Predictive Model Backtesting & CLV Tracking
Capture historical opening lines, mid-game price adjustments, and closing line values (CLV) with microsecond precision timestamps.
3. Automated Sports Trading & In-Game Hedging
Track game momentum, score changes, and shifting spread/total lines to trigger hedge positions across sportsbooks.
4. Sports Media, Scores & Betting Widgets
Integrate clean JSON endpoints into live dashboards, match analysis portals, and mobile sports applications.
🔗 Integration Examples
JavaScript/Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('sian.agency/bet365-live-odds-scraper').call({operation: 'inplay',sport: 'soccer',oddsFormat: 'decimal'});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('sian.agency/bet365-live-odds-scraper').call(run_input={'operation': 'inplay','sport': 'soccer','oddsFormat': 'decimal'})for item in client.dataset(run['defaultDatasetId']).iterate_items():print(item)
cURL
curl -X POST 'https://api.apify.com/v2/acts/sian.agency~bet365-live-odds-scraper/runs?token=YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"operation": "inplay", "sport": "soccer", "oddsFormat": "decimal"}'
Automation Workflows (N8N / Zapier / Make)
- Trigger: Schedule (e.g. every 2 minutes during game day)
- HTTP Request: Call the actor API
- Process: Handle the JSON in-play rows
- Action: Push to database, trigger telegram alerts, or log to spreadsheet
📊 Performance & Pricing
FREE Tier (Try It Now)
- 50 rows per run — full feature access to live in-play and pre-match markets
- No credit card required
- Perfect for testing a sport, market or integration
PAID Tier (Production Ready)
- Unlimited rows per run
- Fast, structured in-play feeds direct from Bet365
- Pay-per-result: only charged for lines actually returned
💰 Bulk per-row pricing that undercuts the market — pay only for verified lines returned, with zero charges for empty or failed matches.
❓ Frequently Asked Questions
Q: Which sports are available for live in-play scraping?
A: Soccer, basketball, tennis, baseball, ice hockey, volleyball, table tennis, rugby union, rugby league, handball, horse racing, and esports.
Q: Are odds available in American or Decimal format?
A: Both formats are natively supported. Set oddsFormat to decimal or american.
Q: Can I scrape lines for a specific match?
A: Yes! Use operation: "event_detail", specify the sport, and supply the eventId.
Q: Do I need a Bet365 account or residential proxies?
A: No. All extraction, proxy rotation, and data formatting are handled autonomously in the cloud.
Q: What output formats are available?
A: JSON, CSV, and Excel — export directly from the Apify dataset.
Q: How often do live odds update?
A: Lines reflect live prices in real time; each row carries a capturedAt timestamp.
🐛 Troubleshooting
No rows returned
- The selected sport may currently have no live in-play games — run
operation: "sports"to see active live sports. - Check if the sport is in off-season.
Fewer rows than expected
- On the FREE tier output is capped at 50 rows — upgrade for unlimited dataset rows.
⚠️ Responsible Use
This tool returns sports betting odds for data, research and informational purposes only. It is not betting advice and does not facilitate the placement of bets. Sports betting may be restricted or illegal in your jurisdiction — you are responsible for complying with all applicable laws. You must be of legal gambling age (18+, or 21+ where required). If you or someone you know has a gambling problem, help is available: call 1-800-GAMBLER (US) or contact your local support service.
⚖️ Is it legal to scrape data?
Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what has been chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.
You can also read Apify's blog post on the legality of web scraping.
⚠️ Trademark Disclaimer
Bet365™ is a registered trademark of Hillside (New Media) Ltd. This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Hillside (New Media) Ltd or Bet365. It accesses publicly available sports data for informational purposes. All product names, logos, and brands are property of their respective owners and are used for identification purposes only.
🤝 Support
Join our active support community
- For issues or questions, open an issue in the actor's Console Issues tab
- Check the SIÁN Agency Store for more automation tools
- 📧 apify@sian-agency.online
Built by SIÁN Agency | More Tools