{"id":29824241,"url":"https://github.com/kaymen99/google-maps-lead-generator","last_synced_at":"2025-10-04T02:25:19.556Z","repository":{"id":298111840,"uuid":"998903895","full_name":"kaymen99/google-maps-lead-generator","owner":"kaymen99","description":"Extract Google Maps business leads and enrich contact details using AI \u0026 web scraping","archived":false,"fork":false,"pushed_at":"2025-06-24T11:31:47.000Z","size":47,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-29T03:01:17.547Z","etag":null,"topics":["ai-agents","ai-scraping","data-scraping","google-maps","google-maps-api","lead-generation","web-scraping"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kaymen99.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-09T12:43:45.000Z","updated_at":"2025-07-02T20:46:46.000Z","dependencies_parsed_at":"2025-06-24T12:33:07.412Z","dependency_job_id":"da419be2-41db-441e-9337-f7fb9c7dca9d","html_url":"https://github.com/kaymen99/google-maps-lead-generator","commit_stats":null,"previous_names":["kaymen99/google-maps-lead-generator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kaymen99/google-maps-lead-generator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaymen99%2Fgoogle-maps-lead-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaymen99%2Fgoogle-maps-lead-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaymen99%2Fgoogle-maps-lead-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaymen99%2Fgoogle-maps-lead-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kaymen99","download_url":"https://codeload.github.com/kaymen99/google-maps-lead-generator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kaymen99%2Fgoogle-maps-lead-generator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278254666,"owners_count":25956644,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agents","ai-scraping","data-scraping","google-maps","google-maps-api","lead-generation","web-scraping"],"created_at":"2025-07-29T02:42:52.122Z","updated_at":"2025-10-04T02:25:19.528Z","avatar_url":"https://github.com/kaymen99.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **Google Maps Lead Generation: Find Business data Using AI**\n\n## 👉 **[How to Scrape Unlimited Google Maps Leads Using AI!](https://dev.to/kaymen99/how-to-scrape-unlimited-google-maps-leads-using-ai-4kem)**  \n\nThis **AI lead generation tool** helps you discover and enrich local businesses data from any location. It combines the power of **Serper Maps API** with intelligent **AI web scraping** to build comprehensive business prospect lists that are ready for your sales outreach campaigns!\n\nhttps://github.com/user-attachments/assets/e65275a6-0369-4f37-bb5d-f81f41f97409\n\n## **Why This Tool?**\n\n- **Cost-Efficient** – Generate lead lists at the fraction of the cost of other scrapers\n- **Fully Automated** – Handles the entire process from location search to lead enrichment\n- **Contact Detail Extraction** – Automatically finds emails, social media profiles, and more\n- **Smart Web Scraping** – Uses AI to navigate websites and extract relevant information\n- **Ready-to-Use Output** – Generates Excel files you can immediately use for outreach\n- **Multi-LLM Integration** – Choose any AI models like GPT-4.1, Claude or DeepSeek to run your search\n\n## **How It Works**\n\nThe tool workflow is simple:\n\n### 1. Data Collection\n- Takes a location and search query input (e.g., \"Toronto\", \"Realtors\")\n- Uses **Serper Maps API** to scrape Google Maps places data\n- Returns a list of relevant places with basic information (business name, address, website, phone, etc.)\n\n### 2. Data Enrichment\n- For each business found, the tool scrapes their website (landing or contact pages)\n- Uses an **AI agent (LLM)** to intelligently identify:\n  - Email addresses\n  - Detailed contact information\n  - Social media links (Facebook, Twitter, Instagram, etc)\n  - Other relevant data points for outreach\n\n### 3. Data Export\n- Saves all collected and enriched data to an Excel file, under the `data` directory\n- Organizes information in a clean, ready-to-use format for sales outreach\n\n## **Cost Implications**\n\nWhile other Google Maps scrapers like [Apify's Google Maps Extractor](https://apify.com/compass/google-maps-extractor) or [Crawler Google Places](https://apify.com/compass/crawler-google-places) charge **$5-10 per 1000 results** (depending on the options you choose), this system leverages the Serper API and efficient web scraping to deliver the same results for approximately **$0.2 per 1000 leads** – that's up to **50x cheaper**!\n\nEven better, Serper API offers **free credits** when you sign up, making your initial lead generation campaigns essentially **free**!\n\n## 🛠️ **Project Structure**\n\n```\n.\n├── main.py                # Main application script\n├── process_from_excel.py  # Script to process existing Excel files\n├── src/\n│   ├── places_api.py      # Serper Maps API integration\n│   ├── web_scraper.py     # Web scraping utilities with Playwright\n│   ├── business_info.py   # Contact extraction and business data enrichment\n│   ├── data_export.py     # Excel export functions\n│   └── utils.py           # Utility functions\n├── data/                  # Output folder for generated Excel files\n└── requirements.txt       # Python dependencies\n```\n\n## **How to Use**\n\n### Prerequisites\n\n- Python 3.8+ installed\n- Serper API key ([Get one here](https://serper.dev/))\n- [OpenRouter API key](https://openrouter.ai/) (to use any LLM model) or you preferred LLM API key, like OpenAI or Claude\n\n### Setup\n\nClone the repository and install dependencies:\n\n```bash\n# Clone the repository\ngit clone https://github.com/kaymen99/google-maps-lead-generator\ncd google-maps-lead-generator\n\n# Install dependencies\npip install -r requirements.txt\n```\n\n### Set up your API keys\n\nCreate a `.env` file in the root directory of the project and add your API keys:\n\n```bash\nSERPER_API_KEY=your-serper-api-key\nOPENROUTER_API_KEY=your-openrouter-api-key\n```\n\n### Running the Tool\n\nEdit the parameters directly in `main.py` to customize your search:\n\n```python\n# In main.py\nlocation = \"Toronto\"       # Location to search into\nsearch_query = \"Realtors\" # Local business to search for\nnum_pages = 1             # Each page contains 20 results\n```\n\nThen you can run the tool with:\n\n```bash\n# Simply run the main.py file\npython main.py\n```\n\n### Running from Streamlit App\n\nYou can also run the tool from a Streamlit app by running:\n\n```bash\nstreamlit run app.py\n```\n\n### 📊 **Output Files**\n\nThe tool automatically generates an Excel file in the `/data` directory at the root of your project:\n\n- `data_[Query]_[Location]_[Date].xlsx`: Complete enriched business data including:\n  - Business names and addresses\n  - Phone numbers\n  - Website URLs\n  - **Extracted email addresses**\n  - **Social media profiles** (Facebook, Twitter, Instagram)\n  - **Contact information**\n  - Additional business metadata (if you want to add more data like products, services, etc.)\n\nThis file is ready to use for your outreach campaigns with all the necessary contact details in one place!\n\n## **Contributing**\n\nContributions are welcome! Please open an issue or submit a pull request for any changes. \n\n## **Contact**\n\nIf you have any questions or suggestions, feel free to reach out!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaymen99%2Fgoogle-maps-lead-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkaymen99%2Fgoogle-maps-lead-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaymen99%2Fgoogle-maps-lead-generator/lists"}