Scrape Contacts from Google Search Results Websites
Deprecated
Pricing
Pay per usage
Scrape Contacts from Google Search Results Websites
Deprecated
This actor is designed to efficiently extract π§ email addresses and π phone numbers directly from Google search results. By inputting a keyword or phrase, this actor searches relevant Google results and scrapes contact details, providing a powerful tool for lead generation π
0.0 (0)
Pricing
Pay per usage
4
Total users
20
Monthly users
2
Runs succeeded
0%
Last modified
3 months ago
π Website Contact Information Scraper
β¨ Purpose
This actor crawls websites to extract contact information including email addresses, phone numbers, and contact form URLs. It starts with a list of search queries, performs Google searches to find websites, and then systematically scrapes each website to collect contact details.
π Features
- π§ Extracts up to 2 email addresses per website
- π± Extracts up to 2 phone numbers per website
- π Extracts up to 2 contact form URLs per website
- β‘ Uses both requests and Selenium for crawling (to handle JavaScript-heavy websites)
- π― Prioritizes pages with "contact" or "about" in the URL
- β Verifies email addresses to filter out invalid or fake ones
- π Handles international phone numbers via the phonenumbers library
- π Limited to crawling 100 pages per website by default (configurable)
βοΈ Input Parameters
Parameter | Type | Required | Default | Description |
---|---|---|---|---|
google_queries | array | Yes | - | List of search queries to find websites. The actor will perform Google searches using these queries and scrape contact information from the resulting websites. |
max_pages | integer | No | 100 | Maximum number of pages to crawl per website. |
countryCode | string | No | 'es' | Google search country code. |
languageCode | string | No | 'es' | Google search language code. |
π Output Format
The actor outputs data in the following format for each website:
{"Website": "https://example.com/","email (1)": "contact@example.com","email (2)": "info@example.com","phone (1)": "+15551234567","phone (2)": "+15559876543","contact_form (1)": "https://example.com/contact","contact_form (2)": "https://example.com/support","start_url": "https://example.com","google_search_url": "https://www.google.com/search?q=example+query","search_term": "example query"}
π How It Works
- π The actor takes search queries and performs Google searches using Apify's Google Search Scraper
- π For each website found in the search results:
- First checks the homepage for contact information
- Prioritizes pages containing "about", "contact", or "support" in the URL
- Uses regular expressions to extract emails and the phonenumbers library for phone numbers
- Attempts regular requests first (faster) and falls back to Selenium for JavaScript-heavy sites
- Verifies emails to filter out invalid ones
- Collects and returns the specified number of contact details
β οΈ Limitations
- Limited to extracting 2 items of each contact type per website
- May not extract all contact information from complex websites
- Will skip certain URLs containing terms like "sign_up", "privacy", "policy", "donate", etc.
- Has a timeout of 15 seconds for page loading
- Special handling for social media platforms (only scrapes the main page without going deeper)
π οΈ Dependencies
- π Selenium WebDriver for JavaScript-rendered content
- π§© Beautiful Soup for HTML parsing
- π Phonenumbers library for international phone number recognition
- π¨ Requests library for HTTP requests
- π Google Search Scraper Apify actor for initial website discovery