
Justia Lawyer Email List & Leads Scraper
Pricing
Pay per event

Justia Lawyer Email List & Leads Scraper
Build a targeted lawyer email list from Justia by state and practice area. Page-by-page crawl harvests emails (comma-joined), phone, bio, socials, vCard. CSV/JSON-ready for attorney email lists, attorney mailing list, and lawyers mailing list.
5.0 (1)
Pricing
Pay per event
1
3
3
Last modified
4 hours ago
Justia.com Lawyer Leads Scraper (Apify Actor)
High-signal, budget-friendly scraping of lawyer leads from Justia.
This actor crawls state × practice area listings sequentially (page by page), opens each lawyer profile, pulls rich profile metadata, and (optionally) visits the lawyer’s own website to harvest and normalize email addresses.
Why this is the best lawyer lead actor on Apify
Depth of data (more than typical list scrapers):
- Biography
- Direct phone
- Website visit & email discovery dummy domain filtering and multi-email support (comma-joined)
- Granular profile blocks parsed into separate columns: Practice Areas, Jurisdictions, Languages, Professional Experience, Education, Awards, Professional Associations, Publications
- All socials broken out into columns (Facebook, X/Twitter, LinkedIn, Instagram, Avvo, Lawyers.com, Martindale, blog) + vCard
- Profile image URL and canonical profile URL
Efficiency & reliability
- Sequential page-by-page crawl per combo (prevents exploding queues and billing caps)
- JSON-LD assisted discovery + anchor fallbacks for robust URL extraction
- Email normalization with placeholder & telemetry domain filters
- Proxy support and configurable delays
Captured Fields (columns)
Every field is output as a string column (no arrays):
fullName
phone
location
-"City, State, ZIP"
if presentabout
- biographyprofileUrl
- Justia profile URLprofilePictureUrl
websiteUrl
- external site (not directories/socials)website
- same value aswebsiteUrl
(duplicate field, per spec)email
- all discovered emails from the lawyer’s site, comma-separated- Filters:
sentry.io
,sentry.wixpress.com
,sentry-next.wixpress.com
,example.*
,test.*
,invalid
,localhost
,localdomain
,email.com
, etc.
- Filters:
practiceAreas
jurisdictions
(a.k.a. “Jurisdictions Admitted to Practice”)languages
professionalExperience
education
awards
professionalAssociations
publications
facebook
x
(X/Twitter)linkedin
instagram
justia
(the profile itself)avvo
lawyers_com
martindale
blog
vcardUrl
Block fields (e.g., Practice Areas, Education) are comma-separated strings built from Justia’s description lists and languages widgets.
Inputs (via INPUT.json
/ --input-file
)
Key | Type | Required | Default | Notes |
---|---|---|---|---|
states | string[] | ✅ | - | Use state names (e.g., "New York" ). Include "All" to scrape all supported states. |
fields | string[] | ✅ | - | Use practice area names (e.g., "Family Law" ). Include "All" to scrape all supported fields. |
maxItems | number | ❌ | 1000 | Global cap across all combos. |
visitWebsitesForEmails | boolean | ❌ | true | If true, fetch websites and harvest emails. |
websiteCrawlDepth | number | ❌ | 1 | Within-domain depth for email harvesting (0 = homepage only). |
proxy | object | ✅ | - | Standard Apify proxy object, e.g. { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] } . |
minDelayMs | number | ❌ | 800 | Random polite delay between requests. |
maxDelayMs | number | ❌ | 1800 | - |
maxPagesPerCombo | number | ❌ | 200 | Safety limit for pagination per State × Field combo. |
Supported states
All 50 US states + Washington, DC. Use canonical names (e.g., "New York"
, "Washington, DC"
).
Supported fields
Full Justia mapping (e.g., Family Law, Criminal Law, Personal Injury, Medical Malpractice, Bankruptcy, Employment Law, Immigration Law, Intellectual Property, Trademarks, Patents, White Collar Crime, etc.).
Use the exact names from the list in the actor’s constants; "All"
works too.
Example input
{"states": ["New York"],"fields": ["Family Law"],"maxItems": 50,"visitWebsitesForEmails": true,"websiteCrawlDepth": 1,"proxy": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] },"minDelayMs": 900,"maxDelayMs": 1600,"maxPagesPerCombo": 150}
Example output
{"fullName": "Jane Doe","phone": "123123123","location": "New York, NY, 10001","about": "Jane focuses her practice on high-asset matrimonial disputes...","profileUrl": "https://lawyers.justia.com/lawyer/jane-doe-1111111","profilePictureUrl": "https://justatic.com/profile-images/111111-11111111-s.jpg","websiteUrl": "https://www.examplelawfirm.com/","website": "https://www.examplelawfirm.com/","email": "contact@examplelawfirm.com,contact2@examplelawfirm.com","practiceAreas": "Family Law - Divorce, Family Law - Child Custody","jurisdictions": "New York - Since 2015","languages": "English: Spoken, Written, Spanish: Spoken","professionalExperience": "Partner - Example Law Firm - 2020 - Current","education": "Columbia Law School - J.D. (2014)","awards": "Super Lawyers - Rising Stars - 2019","professionalAssociations": "NY State Bar Association - Member","publications": "Equitable Distribution in NY - NYLJ - 2022","facebook": null,"x": "https://x.com/xxxx","linkedin": "https://www.linkedin.com/in/xxxx/","instagram": null,"justia": "https://lawyers.justia.com/lawyer/jane-doe-1111111","avvo": "https://www.avvo.com/attorneys/10001-ny-jane-done-111111.html","lawyers_com": null,"martindale": null,"blog": "https://www.examplelawfirm.com/blog/","vcardUrl": "https://lawyers.justia.com/lawyer/jane-done-lawyer-1111111/vcard"}