ParseForge Scrapers

disease.sh Global Health Data Scraper

parseforge/diseasesh-health-scraper

EducationAutomationOther

Scrapes global health data from disease.sh for every country. Returns flat rows with cases, deaths, recovered, active, tests, population, and per-million rates. Filter by continent or search term, sort by metric, and export to CSV, JSON, Excel, or XML.

Run this scraper See the API call
Total users
2
Monthly active
1
Total runs
44
Bookmarked
0
Rating
Not rated yet
Last modified
12 days ago

Overview

ParseForge

disease.sh Global Health Data Scraper

Scrape global health data for every country from disease.sh, with cases, deaths, tests, and population, up to a million records per run. Filter by continent or search term, sort by any metric, and export to CSV, JSON, Excel, or XML. No API key required.

disease.sh aggregates COVID-19 and other health metrics from official sources, but its API returns nested JSON that is hard to analyze. This Actor flattens every country into one row with total cases, deaths, recovered, active, tests, population, and per-million rates. Filter by continent or search term, sort by any metric, and export clean data for dashboards, research, or reporting.

Who uses it What they scrape disease.sh for
Epidemiologists Compare disease spread across countries and continents
Data journalists Get current health statistics for news stories and visualizations
Public health researchers Build datasets for analysis of testing rates and mortality
App developers Populate health dashboards with up-to-date country metrics

What it does

This Actor collects global health data for countries from disease.sh and returns each country as a flat row with cases, deaths, recovered, active, tests, population, and per-million rates.

  • ๐ŸŒ Continent filter: restrict results to Africa, Asia, Europe, North America, South America, or Australia/Oceania.
  • ๐Ÿ”Ž Search term: return only countries whose name contains your text, like united or korea.
  • ๐Ÿ“Š Sort by metric: order countries by cases, deaths, recovered, active, tests, population, or per-million rates.
  • ๐Ÿ“ฆ Bulk export: collect up to 1,000,000 records per run and download as CSV, JSON, Excel, or XML.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with disease.sh data

๐Ÿ“ˆ Track global outbreaks.

A health analyst runs the Actor daily with no filters to get the latest cases and deaths for every country, then feeds the CSV into a dashboard to monitor trends.

๐ŸŒ Compare continents.

A researcher sets the continent filter to Europe and sorts by deaths per million to identify which countries are most affected and investigate their policies.

๐Ÿ”Ž Focus on specific countries.

A journalist uses the search term isle to pull data for Ireland and Iceland, then exports the rows to create a comparative chart for an article.

๐Ÿ“Š Build a testing dataset.

A data scientist collects all countries sorted by tests per million to analyze testing capacity and its correlation with case detection.

Why choose this scraper

What you get
Flat country rows Each country becomes one record with all metrics, ready for spreadsheets or databases.
Flexible filtering Narrow to a continent or search by country name to get only the data you need.
Sortable output Order countries by cases, deaths, tests, or per-million rates to spot leaders quickly.
No API key The Actor calls the public disease.sh endpoint directly, so you can start scraping immediately.

How it compares

No other Store actor targets disease.sh the same way, so the honest comparison is with the alternatives teams actually weigh.

disease.sh Global Health Data Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When disease.sh changes Maintained for you You fix it You re-learn the page
Proxies, retries, anti-bot Built in Your problem Browser only
Output Fixed JSON schema, CSV/Excel export Whatever you build Copy-paste
Cost Pay per result Engineering time Analyst hours

Configure the run

Drive the Actor with an optional continent, a search term, and a sort metric, and set a maximum record count to control the output size. The Input tab lists every parameter.

A first run with the defaults:

{
  "maxItems": 10
}

A larger pull:

{
  "maxItems": 200
}

Pricing

Pay-per-result: $0.005 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $0.50
1,000 results $5.00
10,000 results $50.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the disease.sh Global Health Data Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to disease.sh through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/diseasesh-health-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check your search term and continent filter. If you set a search term that matches no country, or a continent with no countries, the output will be empty. Clear the filters and run again.

Why are some countries missing?

disease.sh may not have data for every country, especially small territories. Also, your continent filter or search term may exclude them. Try removing filters to see all available countries.

The run fails with an error.

Ensure your maxItems is between 1 and 1,000,000. If the error persists, check the Apify log for details and retry. The disease.sh endpoint may be temporarily unavailable.

The output has unexpected values.

Some metrics may be zero or null if the country has not reported them. Verify the data against the disease.sh website or official sources.

FAQ

Question Answer
What data does disease.sh provide? disease.sh aggregates health metrics from official sources like WHO and national health ministries. This Actor returns total cases, deaths, recovered, active, tests, population, and per-million rates for each country.
Do I need an API key? No, the Actor uses the public disease.sh endpoint without authentication. You can run it immediately after adding it to your Apify account.
Can I filter by continent? Yes, use the continent input to select Africa, Asia, Europe, North America, South America, or Australia/Oceania. Leave it as All Continents for the whole world.
How do I search for specific countries? Enter a search term in the input, and the Actor returns only countries whose name contains that text, case-insensitive. For example, united returns the United States and the United Kingdom.
Can I sort the results? Yes, choose a sort metric from the input: cases, deaths, recovered, active, tests, population, cases per million, or deaths per million. Results are ordered highest first.
What is the maximum number of records? You can set maxItems up to 1,000,000, but there are fewer than 250 countries, so the Actor will return all matching records. The limit is for safety and future expansion.
What formats can I export? The Actor outputs data in CSV, JSON, Excel, and XML. You can download the dataset from the Apify run page or use the API to fetch it programmatically.
How often is the data updated? disease.sh updates its data regularly, often daily. Each run of this Actor fetches the latest available data from the source.
Can I get historical data? This Actor returns current snapshot data only. For historical time series, you would need to use the disease.sh API directly or another tool.
Is the data reliable? disease.sh aggregates from official sources, but accuracy depends on reporting by each country. Always verify critical data with primary sources.

Related actors

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by disease.sh. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
continent string (7 options) Optional. Only return countries on this continent. Leave as All for the whole world. not set
search string Optional. Only return countries whose name contains this text (case-insensitive), e.g. united, korea, isle. not set
sortBy string (8 options) Order countries by this metric, highest first. cases
maxItems integer How many records to collect per run. 10

Pricing

from $4.52 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.00452 to $0.005

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~diseasesh-health-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run disease.sh Global Health Data Scraper on Apify All scrapers