Mexico Business Directory Scraper - Phone & Address Leads avatar

Mexico Business Directory Scraper - Phone & Address Leads

Pricing

from $17.00 / 1,000 results

Go to Apify Store
Mexico Business Directory Scraper - Phone & Address Leads

Mexico Business Directory Scraper - Phone & Address Leads

Scrape Mexican business leads by type and city: name, phone, WhatsApp, email, website, category (giro) and full address (street, colonia, city, state, postal code) plus coordinates. Export to JSON, CSV or Excel.

Pricing

from $17.00 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 days ago

Last modified

Share

Mexico Business Directory Scraper - Phone & Address Leads

Mexico Business Directory Scraper - Phone & Address Leads

Here is one real result, with every field the actor returns:

{
"id": "413131003",
"name": "LA COCINA DE SAN JUAN",
"phone": "(55)2248-6633",
"whatsapp": "5522486633",
"email": "lacocinadesanjuan@gmail.com",
"website": "http://cocinadesanjuan.com.mx",
"category": "Restaurantes en General",
"street": "2DA CALLE DE ERNESTO PUGIBET 21 LOC 342",
"colonia": "CENTRO (AREA 7)",
"city": "CUAUHTEMOC",
"state": "DF",
"postalCode": "06000",
"fullAddress": "2DA CALLE DE ERNESTO PUGIBET 21 LOC 342, CENTRO (AREA 7), CUAUHTEMOC, DF, CP 06000",
"description": "Sabado Y Domingo Con Reservación Vía Whatsapp",
"additionalPhones": ["5522486633"],
"openingHours": ["Monday, Tuesday, Wednesday, Thursday, Friday: 11:00-20:00"],
"imageUrl": "https://graficos.seccionamarilla.com.mx/PRODUCTS/03/413131003/1/CONTENTS/15/45519015/1/10951286/06_412939292-18_f.jpg",
"socialProfiles": ["https://www.facebook.com/lacocinadesanjuan"],
"paymentMethods": "AMERICAN,MASTER,VISA,EFECTIVO",
"officialWebsite": null,
"latitude": 19.42986,
"longitude": -99.14513,
"listingUrl": "https://www.seccionamarilla.com.mx/informacion/la-cocina-de-san-juan/restaurantes/distrito-federal/cuauhtemoc/centro-area-7/413131003",
"searchQuery": "restaurantes",
"searchCity": "Ciudad de Mexico",
"source": "Sección Amarilla",
"observedAt": "2026-08-10T14:29:43.187Z",
"error": null
}

The most complete Mexico business directory scraper available. It returns every contact and address field the source listing exposes for each business, plus derived fields like full address, coordinates and social profiles, and gives you a combination of business-type and city filters plus an optional contact-enrichment add-on to target exactly the leads you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor searches a public Mexican business directory for every combination of the business types (giros) and cities you pass, paginates through the matching listings, and writes one normalized record per business to the run's dataset. Each record carries the business name, phone, WhatsApp, email, website and category from the listing. When fetchDetails is enabled it opens each business page to add the full street address, colonia, postal code (CP) and description. Missing source values are returned as null, and coordinates, social profiles and opening hours are captured when the source exposes them.

An optional paid contact-enrichment add-on can try to find a public business contact email and a contact person for results that have no email.

Quickstart

Open the actor, paste this into the input, and press Run. It returns up to 10 restaurants in Ciudad de Mexico with full address details.

{
"searchQueries": ["restaurantes"],
"cities": ["Ciudad de Mexico"],
"maxBusinesses": 10,
"fetchDetails": true,
"enrichContacts": false,
"enrichContactsMax": 50
}

Combine several business types and cities to search every pairing in one run. Disable fetchDetails for a faster listing-only run.

Input reference

FieldTypeRequiredDefaultDescription
searchQueriesstring[]no["restaurantes"]One or more business types, categories or keywords in Spanish, for example restaurantes, hoteles, dentistas, abogados. Every type is searched across every city.
citiesstring[]no["Ciudad de Mexico"]One or more Mexican cities or localities, for example Ciudad de Mexico, Guadalajara, Monterrey. Accents and capitalization are handled automatically.
maxBusinessesintegerno10Maximum businesses to collect across the whole run.
fetchDetailsbooleannotrueWhen enabled, opens each business page to add full street address, postal code (CP) and description. Disable for a faster listing-only run.
enrichContactsbooleannofalseOptional paid add-on. For each result without an email, attempt to find a public business contact email and a contact person's name. Billed per attempt, plus an extra charge only when an email is found.
enrichContactsMaxintegerno50Cap how many results the add-on tries to enrich, to control add-on cost. Free Apify accounts are capped at 3.

Output reference

One dataset item per business. Types: string, number, string[], or null when the source value is absent.

FieldTypeDescription
idstringListing ID (unique per business in the source directory).
namestringBusiness name.
phonestringPrimary phone number.
whatsappstringWhatsApp number, or null.
emailstringPublic email, or null.
websitestringWebsite URL, or null.
categorystringBusiness category / giro.
streetstringStreet address (populated when fetchDetails is on).
coloniastringNeighborhood (colonia).
citystringCity.
statestringState code, for example DF, JAL, NL.
postalCodestringPostal code (CP).
fullAddressstringSingle-line assembled postal address.
descriptionstringBusiness description text, or null.
additionalPhonesstring[]Extra phone numbers found on the listing.
openingHoursstring[]Opening hours lines, when the source exposes them.
imageUrlstringBusiness image URL, or null.
socialProfilesstring[]Social media profile URLs.
paymentMethodsstringPayment methods accepted, or null.
officialWebsitestringOfficial business website, or null.
latitudenumberLatitude, or null.
longitudenumberLongitude, or null.
listingUrlstringURL of the source listing.
searchQuerystringThe business type that produced this result.
searchCitystringThe city that produced this result.
sourcestringSource directory name.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringnull on success. On a failed run, a single item with a populated error field is written instead.
enrichedEmailstringContact email found by the add-on (only when enrichContacts is on).
enrichedContactNamestringContact person name found by the add-on.
enrichedJobTitlestringContact job title found by the add-on.
enrichedEmailStatusstringDeliverability status of the enriched email.
enrichedSourcestringSource URL where the enriched contact was found.
enrichedConfidencestringConfidence rating for the enriched contact.

Example output record

Real record from a live run (input {"searchQueries":["restaurantes"],"cities":["Ciudad de Mexico"],"maxBusinesses":10,"fetchDetails":true}):

{
"id": "413131003",
"name": "LA COCINA DE SAN JUAN",
"phone": "(55)2248-6633",
"whatsapp": "5522486633",
"email": "lacocinadesanjuan@gmail.com",
"website": "http://cocinadesanjuan.com.mx",
"category": "Restaurantes en General",
"street": "2DA CALLE DE ERNESTO PUGIBET 21 LOC 342",
"colonia": "CENTRO (AREA 7)",
"city": "CUAUHTEMOC",
"state": "DF",
"postalCode": "06000",
"fullAddress": "2DA CALLE DE ERNESTO PUGIBET 21 LOC 342, CENTRO (AREA 7), CUAUHTEMOC, DF, CP 06000",
"description": "Sabado Y Domingo Con Reservación Vía Whatsapp",
"additionalPhones": ["5522486633"],
"openingHours": ["Monday, Tuesday, Wednesday, Thursday, Friday: 11:00-20:00"],
"imageUrl": "https://graficos.seccionamarilla.com.mx/PRODUCTS/03/413131003/1/CONTENTS/15/45519015/1/10951286/06_412939292-18_f.jpg",
"socialProfiles": ["https://www.facebook.com/lacocinadesanjuan"],
"paymentMethods": "AMERICAN,MASTER,VISA,EFECTIVO",
"officialWebsite": null,
"latitude": 19.42986,
"longitude": -99.14513,
"listingUrl": "https://www.seccionamarilla.com.mx/informacion/la-cocina-de-san-juan/restaurantes/distrito-federal/cuauhtemoc/centro-area-7/413131003",
"searchQuery": "restaurantes",
"searchCity": "Ciudad de Mexico",
"source": "Sección Amarilla",
"observedAt": "2026-08-10T14:29:43.187Z",
"error": null
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~mexico-companies-directory-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchQueries":["restaurantes"],"cities":["Ciudad de Mexico"],"maxBusinesses":25,"fetchDetails":true}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~mexico-companies-directory-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchQueries":["dentistas","abogados"],"cities":["Guadalajara","Monterrey"],"maxBusinesses":200}'

Apify CLI:

apify call scrapers_lat/mexico-companies-directory-scraper \
--input '{"searchQueries":["hoteles"],"cities":["Ciudad de Mexico"]}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per business record returned (result event). See the pricing tab for the current per-result price.
  • Detail and enrichment add-ons. The full-address detail step and the optional contact-enrichment add-on are billed separately, only when they add real data. See the pricing tab for add-on prices.
  • No charge on failure. If a run errors, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 25 records per run (and 3 contact-enrichment attempts). Upgrade for higher maxBusinesses.

FAQ and troubleshooting

A run returned 0 records. Why? The business type and city combination matched nothing in the source. Try a broader Spanish keyword (for example restaurantes instead of a brand name), or a larger city. Zero-result runs are not charged.

How do I get full street addresses and postal codes? Keep fetchDetails enabled (the default). It opens each business page to add street, postalCode, fullAddress and description.

Why is email null for some businesses? The source listing did not publish an email. Enable the enrichContacts add-on to try to find a public business contact email for those results.

Which Spanish keywords work best? Use the business type or giro as written in Mexico, for example restaurantes, dentistas, abogados, hoteles, ferreterias. Accents and capitalization are normalized automatically.

Is this an official directory tool? No. This actor is independent and has no affiliation with the source directory. It reads only data that is publicly available. Use it in accordance with the source terms of service and applicable data protection law.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with any business directory. Accesses only publicly available data. Use in accordance with the source terms of service.