Oddspedia Surebet Actor avatar
Oddspedia Surebet Actor

Pricing

Pay per usage

Go to Store
Oddspedia Surebet Actor

Oddspedia Surebet Actor

Developed by

Yann Feunteun

Yann Feunteun

Maintained by Community

Unlock risk-free profit in seconds! This actor scans Oddspedia’s sure-bet tables, calculates perfect stakes for 2- & 3-way markets and exports ready-to-cash results. One click, no code, guaranteed edge. Run it now and bank the difference.

0.0 (0)

Pricing

Pay per usage

0

Total users

3

Monthly users

3

Runs succeeded

>99%

Last modified

3 days ago

Surebet Arbitrage Scraper

Apify Actor that finds 2‑ or 3‑way sure‑bet (arbitrage) opportunities on Oddspedia, calculates risk‑free stake splits and saves everything to an Apify Dataset ready for export (JSON / CSV / XLSX).


🚀 Features

Capability
Crawl Oddspedia sure‑bet tablesWorks with the global and country-specific Surebets lists on Oddspedia. Other sites are not supported.
Camouflaged browserUses Playwright + Crawlee with Camoufox fingerprints & residential proxy by default.
Stake allocationSplits your chosen Total Stake across outcomes in 2‑ or 3‑way markets to lock in a guaranteed profit and reports the edge %.
Fully configurableProfit filter, page concurrency, per‑page timeout, dataset size cap, custom proxy etc.
One‑click exportDownload results in JSON, CSV, Excel or NDJSON, or stream via the Apify API.

🛠 Input

All settings are defined in the actor’s input form (or INPUT.json when you run locally). Default values make the actor runnable out‑of‑the‑box.

KeyTypeDefaultDescription
startUrlsarray (📄 Request List Sources)["https://oddspedia.com/surebets"]Oddspedia URLs that list sure‑bet opportunities (global or regional).
stakeinteger100Total money (in your currency) to distribute across outcomes when a sure‑bet is found.
minProfitPercentageinteger5Ignore sure‑bets whose edge is below this % of the total stake.
maxEventsinteger0 (unlimited)Stop after this many events — handy for dev & testing.
proxyConfigurationobject (🛡 Proxy editor){ useApifyProxy: true, apifyProxyGroups: ["RESIDENTIAL"] }Use Apify proxy or supply custom proxy URLs.
crawlerOptionsobject (📝 JSON editor){ maxConcurrency: 10, pageTimeoutSecs: 60 }Advanced Crawlee / Playwright knobs.

Example INPUT.json

{
"startUrls": [
{ "url": "https://oddspedia.com/surebets", "userData": { "tag": "global" } },
{ "url": "https://oddspedia.com/au/surebets" }
],
"stake": 250,
"minProfitPercentage": 3,
"maxEvents": 50,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
},
"crawlerOptions": {
"maxConcurrency": 5,
"pageTimeoutSecs": 45
}
}

📤 Output

Each dataset item has two layers:

  1. Event Info – sport, league, date, teams, raw odds.
  2. Allocation – stake split, edge %, profit €.
FieldExampleNotes
sportTennisParsed from sure‑bet row.
leagueATP Wimbledon
date2025-07-01T14:50:00.000ZISO 8601.
outcomes[ { "outcome": "Home", "odd": 2.1, "broker": "bet365" }, … ]Raw odds list. Works for 2‑ and 3‑way markets.
allocation.isSurebettruefalse if edge < minProfitPercentage.
allocation.allocation[ { "outcome": "Home", "stake": 94.44 }, … ]Stake per leg.
allocation.profit8.89Guaranteed profit in same units as stake.
allocation.surebetPercentage3.56Edge %.

Tip: In the Apify UI click Dataset → Preview → Export to download in your favourite format, or call:

https://api.apify.com/v2/datasets/<DATASET_ID>/items?format=json

⚙️ Internals

FilePurpose
main.tsBoots PlaywrightCrawler, handles proxy, concurrency, input parsing.
routes.tsParses sure‑bet rows, applies filters, pushes events to dataset.
surebet.tsMath helper – calculates stake split & profit (supports 2‑ and 3‑way markets).
types.tsType‑safe mapping of input_schema.json.

🏃‍♀️ Quick Start

In the Apify UI

  1. Click Use ActorAccept defaultsRun.
  2. Results appear in Dataset in a few seconds.

Locally (Node 18 +)

# 1. Install deps & compile TypeScript
npm install
npm run build
# 2. Run with defaults (uses Oddspedia & Apify residential proxy)
apify run --purge
# 3. Custom run via INPUT.json
cp examples/INPUT.sample.json INPUT.json # or craft your own
apify run --purge

🧪 Testing Tips

  • Set maxEvents to a low number (e.g. 3) and maxConcurrency to 1 to iterate quickly.
  • Use datasetPreview in the Apify console to inspect live records.
  • Disable proxy (useApifyProxy: false) only if your IP isn’t blocked by the target site.

📜 License

MIT