# 🗺️ Maps Lead Extractor v2.0
### by Decoders Entity

A premium Chrome Extension to extract business leads from Google Maps.
Built for outreach, sales prospecting, and lead generation.

---

## 📦 Installation

1. Open Chrome and go to: `chrome://extensions`
2. Enable **Developer Mode** (toggle in top-right corner)
3. Click **Load unpacked**
4. Select this `maps-extractor` folder
5. The extension icon appears in your Chrome toolbar ✅

---

## 🚀 How to Use

1. Go to **[Google Maps](https://maps.google.com)**
2. Search for your target audience:
   - `"dentists in New York"`
   - `"doctors in Los Angeles"`
   - `"restaurants in Chicago"`
3. Click the **Maps Lead Extractor** extension icon
4. Choose your **Filter Mode**:
   - 🌐 **All** — extract every listing
   - ✅ **Has Website** — only businesses WITH a website
   - 🚫 **No Website** — only businesses WITHOUT a website ← *great for cold outreach!*
5. Adjust settings if needed (scroll delay, max leads)
6. Click **▶ Start Extracting**
7. Wait for it to auto-scroll and collect leads
8. Click **📥 Export CSV** or **📋 Export JSON**

---

## 📊 Data Extracted

| Field       | Description                          |
|-------------|--------------------------------------|
| Name        | Business name                        |
| Phone       | Phone number (if shown)              |
| Email       | Email (if shown on listing)          |
| Address     | Street address                       |
| Website     | Website URL (if listed)              |
| Rating      | Google star rating                   |
| Reviews     | Number of reviews                    |
| Category    | Business type/category               |
| Has Website | Yes / No                             |

---

## ⚙️ Settings

| Setting      | Description                                          |
|--------------|------------------------------------------------------|
| Scroll Delay | Time (ms) between scrolls. Higher = more stable.     |
| Max Leads    | Limit how many leads to extract. 0 = unlimited.      |
| Show Preview | Toggle live lead cards in the popup.                 |

---

## ⚠️ Notes

- **Email is not shown on Google Maps listing cards** — you'll need to visit each website to find emails
- Google Maps **DOM selectors** can change with updates. If scraping breaks, selectors in `content.js` may need updating
- For best results, use a **scroll delay of 2000ms+** on slow connections
- Works best when Google Maps search results are fully loaded before starting

---

## 🔧 Troubleshooting

**No results found?**
→ Make sure you're on a Google Maps search results page (not a single business page)

**Scraping stops early?**
→ Increase scroll delay to 3000ms

**Extension doesn't respond?**
→ Reload the extension at `chrome://extensions` and refresh Google Maps

---

## 📁 File Structure

```
maps-extractor/
├── manifest.json    → Extension config
├── popup.html       → UI interface
├── popup.js         → Popup logic & export
├── content.js       → Core scraper (runs on Maps page)
├── background.js    → Service worker
└── README.md        → This file
```

---

*Built by Decoders Entity — Premium Tech Agency*
*https://decodersentity.com*
