Contact Details Scraper avatar
Contact Details Scraper
Try for free

No credit card required

View all Actors
Contact Details Scraper

Contact Details Scraper

vdrmota/contact-info-scraper
Try for free

No credit card required

Free email extractor to extract and download emails, phone numbers, Facebook, Twitter, LinkedIn, and Instagram profiles from any website. Extract contact information at scale from lists of URLs and download the data as Excel, CSV, JSON, HTML, and XML.

How do I extract contact information from a website?

Our Contact Details Scraper can crawl any website and extract the following contact information for individuals listed on the website:

Why scrape contact information?

Scraping contact details can give you a fast way to get lead-generation data for your marketing and sales teams. Collecting contact details can help you populate and maintain an up-to-date database of leads and prospective customers. Instead of manually visiting web pages and copy-pasting names and numbers, you can extract the data and rapidly sort it in spreadsheets or feed it directly into your existing workflow.

Check out our industry pages for use cases and more ideas on how you can take advantage of web scraping.

How do I use Contact Details Scraper?

Follow our simple step-by-step guide to learn how to use Contact Details Scraper.

How much does Contact Details Scraper cost?

Apify provides you with $5 free usage credits every month on the Apify Free plan, and you can get up to 10,000 results from Contact Details Scraper for those credits. So 10,000 results will be completely free!

But if you need to get more data or to get your data regularly, you should grab an Apify subscription. We recommend our $49/month Personal plan - you can get up to 100,000 results every month with the $49 monthly plan. Or 1 million results with the $499 Team plan!

You should be aware that your results might contain personal data. Personal data is protected by GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers. You can also read our blog post on the legality of web scraping.

Input options

The actor offers several input options to let you specify which pages will be crawled:

  • Start URLs - Lets you add a list of URLs of web pages where the scraper should start. You can enter multiple URLs, upload a text file with URLs, or even use a Google Sheets document.
  • Maximum link depth - Specifies how deep the actor will scrape links from the web pages specified in the Start URLs. If zero, the actor ignores the links and only crawls the Start URLs.
  • Stay within domain - If enabled, the actor will only follow links on the same domain as the referring page. For example, if the setting is enabled and the actor finds a link on http://www.example.com/some-page to http://www.another-domain.com/, it will not crawl the second page because www.example.com is not the same as www.another-domain.com

The actor also accepts additional input options that let you specify proxy servers, limit the number of pages, etc.

Results

The actor stores its results in the default dataset associated with the actor run. You can then download the results in formats such as JSON, HTML, CSV, XML, or Excel. For each page crawled, the following contact information is extracted (examples shown):

  • Emails

    1alice@example.com
    2bob.newman@example.com
    3carl+test@example.co.uk
  • Phone numbers - These are extracted from phone links in HTML (e.g. <a href='tel://123456789'>phone</a>).

    1123456789
    2+123456789
    300123456789
  • Uncertain phone numbers - These are extracted from the plain text of the web page using a number of regular expressions. Note that this approach can generate false positives.

    1+123.456.7890
    2123456789
    3123-456-789
  • LinkedIn profiles

    1https://www.linkedin.com/in/alan-turing
    2en.linkedin.com/in/alan-turing
    3linkedin.com/in/alan-turing
  • Twitter profiles

    1https://www.twitter.com/apify
    2twitter.com/apify

The results also contain information about the URL of the web page, domain, referring URL (if the page was linked from another page), and depth (how many links away from Start URLs the page was found).

For more information, click on the input tab

Output and dataset sample

For each page crawled, the resulting dataset contains a single record, which looks like this (in JSON format):

1{
2  "url": "http://www.robertlmyers.com/index.html",
3  "domain": "robertlmyers.com",
4  "depth": 2,
5  "originalStartUrl": "http://www.robertlmyers.com",
6  "referrerUrl": "http://www.robertlmyers.com",
7  "emails": [
8    "info@robertlmyers.com"
9  ],
10  "phones": [],
11  "phonesUncertain": [
12    "717.393.3643"
13  ],
14  "linkedIns": [],
15  "twitters": [],
16  "instagrams": [],
17  "facebooks": [
18    "https://www.facebook.com/robertlmyers/"
19  ]
20}

Deduplicate and merge contacts

Contact Details Scraper provides the contacts inside one item per scraped URL. This is good for analysis to check where was the contact found but can make it hard to process.

Fortunately, you can use Contact Details Merge & Deduplicate actor to merge and deduplicate the contacts. This actor takes one or more dataset IDs of the Contact Details Scraper and merges all contacts deduplicated so that each domain is on one row. You can choose if contacts of one type should be in only one column or spread.

Integrations and Contact Details Scraper

Last but not least, Contact Details Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. You can integrate with Make, Zapier, Slack, Airbyte, GitHub, Google Sheets, Google Drive, and more. Or you can use webhooks to carry out an action whenever an event occurs, e.g. get a notification whenever Contact Details Scraper successfully finishes a run.

Using Contact Details Scraper with the Apify API

The Apify API gives you programmatic access to the Apify platform. The API is organized around RESTful HTTP endpoints that enable you to manage, schedule, and run Apify actors. The API also lets you access any datasets, monitor actor performance, fetch results, create and update versions, and more.

To access the API using Node.js, use the apify-client NPM package. To access the API using Python, use the apify-client PyPI package.

Check out the Apify API reference docs for full details or click on the API tab for code examples.

Developer
Maintained by Apify
Actor metrics
  • 1.1k monthly users
  • 89.6% runs succeeded
  • 10.7 days response time
  • Created in May 2019
  • Modified about 2 months ago