AnyWho People Search Scraper avatar

AnyWho People Search Scraper

Pricing

Pay per event

Go to Apify Store
AnyWho People Search Scraper

AnyWho People Search Scraper

Scrape public AnyWho people-search, reverse-phone, area-code, and directory results for privacy ops and lead enrichment.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

2

Monthly active users

5 days ago

Last modified

Categories

Share

Scrape public AnyWho people-search, reverse-phone, area-code, and last-name directory pages.

Use this actor to collect structured public directory signals such as names, ages, masked phone snippets, locations, relatives, profile URLs, area codes, and phone prefixes.

Compliance note: this actor is not a consumer-reporting agency tool. Do not use it for employment, tenant screening, credit, insurance, or any FCRA-covered decision.

What does AnyWho People Search Scraper do?

AnyWho People Search Scraper turns public AnyWho pages into clean dataset rows.

It supports several workflows:

  • ๐Ÿ”Ž Name search pages such as John Smith
  • ๐Ÿ“ž Reverse phone pages such as (310) 555-1212
  • ๐ŸŒŽ Area-code pages such as 310
  • ๐Ÿ”ค Last-name directory pages such as S
  • ๐Ÿ”— Direct AnyWho start URLs

The actor fetches AnyWho over HTTP and parses the server-rendered HTML.

Who is it for?

This actor is useful for teams that need repeatable public-directory collection.

  • ๐Ÿ›ก๏ธ Privacy operations teams checking public personal-data exposure
  • ๐Ÿงญ Executive protection analysts reviewing visible contact traces
  • ๐Ÿ“‡ Lead enrichment teams adding public directory context
  • ๐Ÿงน Data hygiene teams validating names, locations, and area-code signals
  • ๐Ÿ” Researchers monitoring public white-pages style results

Why use this actor?

AnyWho pages are human-readable but hard to use in a pipeline.

This actor gives you:

  • Structured rows instead of HTML
  • Consistent field names
  • Dataset exports in JSON, CSV, Excel, XML, and RSS
  • API access through Apify
  • Per-result pricing
  • Small default runs for cheap testing

Data you can extract

FieldDescription
resultTypeperson, phone, area_code, directory_suggestion, or page_summary
searchTypeInput mode used for this result
queryOriginal query
namePerson or directory suggestion name
ageAge shown on AnyWho, when available
currentLocationCurrent location snippet
previousLocationsPrevious-location snippets
maskedPhonesMasked phone snippets shown by AnyWho
relativesPublic relative snippets
profileUrlAnyWho profile or directory URL
phoneNumberReverse-phone page number
areaCodeArea code parsed from phone or area-code pages
phonePrefixPrefix listed on area-code pages
sourceUrlPage that produced the record
scrapedAtISO timestamp

How much does it cost to scrape AnyWho people search results?

The actor uses pay-per-event pricing.

  • A small start event is charged once per run.
  • A result event is charged per dataset item produced.
  • Keep maxItems low while testing.
  • Increase maxPages only when you need deeper pagination.

Final production tier prices are calculated from cloud validation before publishing.

Input options

searchType

Choose one of:

  • name
  • reversePhone
  • areaCode
  • directoryLetter
  • url

queries

The meaning depends on searchType.

Examples:

  • John Smith
  • (310) 555-1212
  • 310
  • S
  • https://www.anywho.com/people/john+smith

location

Optional for name searches.

Examples:

  • California
  • California, Los Angeles

startUrls

Use direct AnyWho URLs if you already have them.

maxItems

Stops the run after this many rows.

maxPages

Controls pagination depth per query.

{
"searchType": "name",
"queries": ["John Smith"],
"location": "California",
"maxItems": 25,
"maxPages": 1
}

Example input: reverse phone lookup

{
"searchType": "reversePhone",
"queries": ["(310) 555-1212"],
"maxItems": 5
}

Example input: area-code research

{
"searchType": "areaCode",
"queries": ["310"],
"maxItems": 50
}

Example input: directory suggestions

{
"searchType": "directoryLetter",
"queries": ["S"],
"includeDirectorySuggestions": true,
"maxItems": 100
}

Example output

{
"resultType": "person",
"searchType": "name",
"query": "John Smith",
"name": "John T Smith",
"age": 100,
"currentLocation": "Reed St, Fort Wayne, IN",
"maskedPhones": ["(260) 744-", "(260) 745-"],
"relatives": ["Harold Smith", "Ella Smithclark"],
"profileUrl": "https://www.anywho.com/people/john+smith/indiana/fort+wayne/a758114512127",
"sourceUrl": "https://www.anywho.com/people/john+smith",
"scrapedAt": "2026-06-20T17:30:00.000Z"
}

How to run

  1. Open the actor on Apify.
  2. Choose a search type.
  3. Enter one or more queries.
  4. Keep maxItems low for the first run.
  5. Click Start.
  6. Download the dataset.

Tips for better results

  • Use full names when possible.
  • Add a state for common names.
  • Use direct AnyWho URLs for repeatable monitoring.
  • Use area-code mode when you need prefix lists.
  • Do not set high pagination until the first page looks correct.

Integrations

You can connect this actor to:

  • Google Sheets via Apify integrations
  • Zapier or Make for enrichment workflows
  • CRM import jobs
  • Privacy ticket queues
  • Executive protection dashboards
  • Internal lead-scoring pipelines

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/anywho-people-search-scraper').call({
searchType: 'name',
queries: ['John Smith'],
location: 'California',
maxItems: 25
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/anywho-people-search-scraper').call(run_input={
'searchType': 'areaCode',
'queries': ['310'],
'maxItems': 50,
})
print(run['defaultDatasetId'])

API usage with cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~anywho-people-search-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"searchType":"reversePhone","queries":["(310) 555-1212"],"maxItems":5}'

MCP usage

Use the Apify MCP server with:

https://mcp.apify.com/?tools=automation-lab/anywho-people-search-scraper

Claude Code setup:

$claude mcp add apify-anywho "https://mcp.apify.com/?tools=automation-lab/anywho-people-search-scraper"

Claude Desktop JSON config:

{
"mcpServers": {
"apify-anywho": {
"url": "https://mcp.apify.com/?tools=automation-lab/anywho-people-search-scraper"
}
}
}

Example prompts:

  • "Run AnyWho People Search Scraper for John Smith in California and summarize the public directory matches."
  • "Check this phone number with the AnyWho reverse-phone actor and return the dataset rows."
  • "Collect prefixes for area code 310 and export them as CSV."

Legality

AnyWho displays public directory information and its own legal notices.

AnyWho displays public directory information and its own legal notices.

You are responsible for how you use the data.

Do not use this actor for:

  • Employment eligibility
  • Tenant screening
  • Credit decisions
  • Insurance decisions
  • FCRA-covered consumer reporting
  • Harassment, stalking, or doxxing

Use it only for lawful public-information workflows.

Privacy operations workflow

A common workflow is:

  1. Load a list of executives or protected persons.
  2. Run name searches with state filters.
  3. Export public exposure rows.
  4. Review profile URLs manually.
  5. Create opt-out/remediation tickets where appropriate.
  6. Repeat on a schedule.

Lead enrichment workflow

A lead enrichment workflow can:

  1. Search full names.
  2. Capture approximate location and masked phone signals.
  3. Combine with first-party CRM data.
  4. Route uncertain matches to manual review.
  5. Avoid automated sensitive decisions.

Area-code workflow

Area-code mode is useful when you need:

  • Prefix lists
  • Area-code page metadata
  • Phone-region context
  • Repeatable telecom enrichment inputs

FAQ

Can I use this for employment or tenant screening?

No. Do not use this actor for FCRA-covered decisions such as employment, tenant screening, credit, or insurance.

Does it reveal full phone numbers?

The actor exports what AnyWho publicly shows on the page. Some people-search rows contain masked phone snippets rather than full numbers.

Troubleshooting: no results

If a query returns no people rows:

  • Check that the name has both first and last name.
  • Try without a location.
  • Try a broader state instead of city.
  • Open the sourceUrl manually to confirm AnyWho has results.

Troubleshooting: only page summary rows

A page summary row means the page loaded but no supported result cards were found.

This can happen with unsupported URLs, no-result pages, or changed AnyWho markup.

Changelog

Initial version supports name, reverse-phone, area-code, directory-letter, and direct URL modes.

Support

If results look wrong, include:

  • Input JSON
  • Run URL
  • Expected AnyWho page URL
  • A short description of the missing field

Responsible use

Respect AnyWho's terms, robots signals, and applicable laws.

Run only the searches you are authorized to perform.

Avoid collecting more data than your workflow requires.

Use small test runs before scaling.