Aqarmap Egypt Property Listings Scraper avatar

Aqarmap Egypt Property Listings Scraper

Pricing

Pay per event

Go to Apify Store
Aqarmap Egypt Property Listings Scraper

Aqarmap Egypt Property Listings Scraper

🏠 Export public Aqarmap Egypt sale and rent listings with prices, property details, locations, photos, amenities, descriptions, and visible seller context.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Export public Egyptian real estate listings from Aqarmap into clean JSON, CSV, Excel, XML, or RSS.

Use Aqarmap Egypt Property Listings Scraper to collect sale and rental inventory, prices, price per square meter, property attributes, locations, coordinates, photos, amenities, descriptions, and seller context that is visible without signing in.

  • 🏠 Start from an Aqarmap sale/rent search or an exact listing URL
  • πŸ’° Capture EGP prices and price-per-square-meter values
  • πŸ“ Export addresses, localities, and map coordinates
  • πŸ–ΌοΈ Collect the main photo and complete image gallery
  • πŸ” Schedule recurring inventory and price monitoring
  • ⚑ Choose detailed enrichment or faster search-card extraction

What does Aqarmap Egypt Property Listings Scraper do?

The Actor turns public pages on aqarmap.com.eg into one structured row per property listing.

For search URLs, it follows pagination until it reaches your listing limit, the page safety limit, or the end of results. It removes duplicate listing IDs across every input URL.

For listing URLs, it reads the property directly. Detail enrichment uses Aqarmap's structured listing data and visible page fields to return richer records.

The Actor supports public sale and rental URLs in English or Arabic paths. It does not require an Aqarmap account.

Who is this Aqarmap property scraper for?

Real estate brokers and lead teams

Build prospecting lists from current inventory, segment by location and property attributes, and send selected records into a CRM.

Investors and acquisition analysts

Compare asking prices, price per square meter, unit size, finish, amenities, and location across neighborhoods.

Valuation and data teams

Create repeatable source datasets for Egyptian property market models, dashboards, and comparable-property analysis.

Property managers and agencies

Monitor new rental inventory or detect when a tracked listing changes availability.

Researchers and journalists

Export reproducible snapshots of publicly advertised real estate without manually copying pages.

Why use this Aqarmap scraper?

  • βœ… Source-specific output: fields map to Aqarmap's public property records.
  • βœ… Search and detail modes: crawl a market segment or look up exact listings.
  • βœ… Global deduplication: each listing ID is emitted once per run.
  • βœ… Useful partial fallback: if one detail page fails, its search-card data can still be saved.
  • βœ… Fail-closed input validation: unrelated domains and Aqarmap pages outside the listing scope are rejected.
  • βœ… Automation ready: run through the Console, API, schedules, webhooks, or MCP.
  • βœ… No browser by default: efficient HTTP extraction keeps runs fast and economical.

What Aqarmap property data can you extract?

FieldDescription
listingIdStable numeric Aqarmap listing identifier
urlCanonical property listing URL
titlePublic listing headline
transactionTypesale or rent
propertyTypeApartment, villa, chalet, land, commercial unit, or another source type
priceNumeric asking price
currencyUsually EGP
pricePerSquareMeterNumeric EGP/mΒ² value when shown
areaSquareMetersProperty floor area
bedrooms / bathroomsRoom counts
locationCombined public location label
streetAddress / locality / countryStructured address fields
latitude / longitudePublic map coordinates when present
imageUrlMain listing image
imageUrlsFull public image gallery on enriched records
datePostedSource publication timestamp
availabilityStructured availability such as InStock
amenitiesPublic feature labels such as balcony, security, or parking
descriptionFull visible listing description
sellerTypeVisible role such as Developer, Broker, or Owner
floor / view / yearBuiltAdditional detail fields when shown
hasWhatsAppWhether an anonymous WhatsApp action is visible
isVerifiedVerification flag visible on a search card
sourceSearchUrlSearch URL that discovered the listing
scrapedAtUTC extraction timestamp

How much does it cost to scrape Aqarmap Egypt listings?

The Actor uses pay-per-event pricing:

  • Actor start: $0.005 per run
  • Property listing: tiered by your Apify plan; the BRONZE reference price is $0.00045004 per saved row

At the BRONZE reference price, 100 listings cost about $0.050 and 1,000 listings about $0.455, including the run-start event.

The FREE-tier per-listing event is $0.00051754. Higher plans receive progressively lower prices: SILVER $0.00035103, GOLD $0.00027002, PLATINUM $0.00018001, and DIAMOND $0.00012601.

Keep maxItems small for a first run. Disable detail enrichment when search-card fields are sufficient and speed matters more than galleries or descriptions.

How to scrape Aqarmap Egypt in 5 steps

  1. Open the Actor input page.
  2. Add one or more Aqarmap Egypt sale, rent, or listing URLs.
  3. Choose the maximum number of property listings.
  4. Keep Enrich from property detail pages enabled for rich records, or disable it for a fast inventory scan.
  5. Start the run and download the dataset as JSON, CSV, Excel, XML, or RSS.

The prefilled example is intentionally small and suitable for a quick first run.

Input parameters

ParameterTypeDefaultPurpose
startUrlsarrayrequiredAqarmap sale/rent searches or property listing URLs
maxItemsinteger20Global maximum unique listings
maxPagesPerSearchinteger20Pagination safety limit per search URL
enrichDetailsbooleantrueFetch detail fields, gallery, amenities, and coordinates
proxyConfigurationobjectnoneOptional Apify Proxy configuration

Example search input

{
"startUrls": [
{
"url": "https://aqarmap.com.eg/en/for-sale/property-type/cairo/dokki/?page=1"
}
],
"maxItems": 20,
"maxPagesPerSearch": 2,
"enrichDetails": true
}

Example exact-listing input

{
"startUrls": [
{
"url": "https://aqarmap.com.eg/en/listing/6819977-for-sale-cairo-hadayek-el-ahram-lmntq-t/"
}
],
"maxItems": 1,
"enrichDetails": true
}

Output example

{
"listingId": "6819977",
"url": "https://aqarmap.com.eg/en/listing/6819977-for-sale-cairo-hadayek-el-ahram-lmntq-t",
"title": "zh 100m Fully finished apartment in pyramid gardens",
"transactionType": "sale",
"propertyType": "Apartment with Garden",
"price": 1800000,
"currency": "EGP",
"pricePerSquareMeter": 18000,
"areaSquareMeters": 100,
"bedrooms": 2,
"bathrooms": 2,
"locality": "Area T",
"country": "EG",
"latitude": 29.967278421053,
"longitude": 31.095728874207,
"datePosted": "2026-07-19T12:21:23.000Z",
"availability": "InStock",
"sellerType": "Developer",
"amenities": ["SECURITY", "BALCONY", "ELEVATOR"],
"scrapedAt": "2026-07-22T00:00:00.000Z"
}

Optional fields are omitted when Aqarmap does not display them. This keeps exports compact and avoids ambiguous null values.

Search mode versus detail mode

Enriched search monitoring

Use a search URL with enrichDetails: true when you need descriptions, galleries, coordinates, amenities, and seller type for every discovered property.

Fast inventory monitoring

Use enrichDetails: false when listing ID, title, price, area, rooms, locality, and lead image are enough. This performs one request per search page rather than one request per property.

Exact property lookup

Supply listing URLs directly. Exact URLs always return detail records because the listing page is the requested source.

Pagination and deduplication

maxItems applies across all start URLs. If two searches contain the same property, the Actor saves it only once.

maxPagesPerSearch prevents an unexpectedly broad category URL from crawling indefinitely. Pagination begins at the page value already present in each URL, or page 1 when no value is supplied.

The Actor stops a search when a page has no new listing cards.

Tips for reliable Aqarmap extraction

  • 🎯 Start with 5–20 rows and inspect the output before increasing limits.
  • 🧭 Use a narrow Aqarmap neighborhood or property-type URL for focused comparable data.
  • ⚑ Disable detail enrichment for frequent inventory snapshots.
  • πŸ” Use Apify schedules to run the same search daily or weekly.
  • πŸ†” Compare snapshots by listingId, not by title.
  • 🌐 Leave the proxy field empty unless direct requests encounter regional rate limiting.
  • πŸ“‰ Keep page limits aligned with the number of records you actually need.

Scheduled price and inventory monitoring

Create an Apify schedule for a stable Aqarmap search URL. Export each run to a named dataset or forward it through a webhook.

A downstream workflow can compare listingId, price, availability, and datePosted against the previous snapshot to identify:

  • newly listed properties,
  • removed inventory,
  • price changes,
  • newly available rentals,
  • changes in neighborhood asking-price distributions.

A card-only schedule is usually sufficient for frequent monitoring. Run periodic enriched snapshots when you also need changed descriptions or image galleries.

Integrations

Google Sheets and Airtable

Send dataset rows through Make, Zapier, or an Apify integration. Use listingId as the unique key to update existing records instead of creating duplicates.

CRM and lead routing

Filter for target neighborhoods, price ranges, seller types, or property attributes, then create CRM records with the canonical listing URL as source evidence.

BigQuery, Snowflake, and data warehouses

Load scheduled snapshots into partitioned tables. Keep scrapedAt and sourceSearchUrl for lineage and time-series analysis.

Slack, email, and webhooks

Trigger alerts only for records that are new or whose price differs from the last saved snapshot.

Use the Actor with the Apify API

Replace YOUR_TOKEN with an Apify API token.

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/aqarmap-egypt-property-listings-scraper').call({
startUrls: [{ url: 'https://aqarmap.com.eg/en/for-sale/property-type/cairo/dokki/?page=1' }],
maxItems: 20,
enrichDetails: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/aqarmap-egypt-property-listings-scraper').call(run_input={
'startUrls': [{'url': 'https://aqarmap.com.eg/en/for-rent/property-type/cairo?page=1'}],
'maxItems': 20,
'enrichDetails': False,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

cURL

curl -X POST \
"https://api.apify.com/v2/acts/automation-lab~aqarmap-egypt-property-listings-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"startUrls": [{"url": "https://aqarmap.com.eg/en/for-sale/property-type/cairo/dokki/?page=1"}],
"maxItems": 20,
"enrichDetails": true
}'

Use Aqarmap property data through MCP

Connect the Actor to AI assistants through Apify's MCP server.

Claude Code

$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/aqarmap-egypt-property-listings-scraper"

Claude Desktop, Cursor, and VS Code

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/aqarmap-egypt-property-listings-scraper"
}
}
}

Example prompts:

  • β€œScrape 20 Aqarmap sale listings from this Dokki search and rank them by EGP per square meter.”
  • β€œExtract this Aqarmap listing and summarize its amenities, location, price, and seller type.”
  • β€œRun a card-only rental inventory snapshot and return IDs and prices as a table.”

Proxy configuration

Direct anonymous HTTP is the default because Aqarmap currently serves useful search and detail pages without login or a proxy.

If your run is rate-limited, enable Apify Proxy in the standard proxy editor. Start with a datacenter proxy. Residential traffic should only be used when a cheaper route is demonstrably blocked.

The Actor retries failed requests up to three times with a short exponential delay.

Data quality and limitations

Aqarmap controls the source data and may change its HTML or structured metadata.

  • Some fields are optional and vary by advertiser or property type.
  • Phone-number reveal can require authentication and is not promised by this Actor.
  • Search cards contain fewer fields than enriched detail pages.
  • Advertiser-provided descriptions may contain spelling differences or mixed languages.
  • Search ordering can change between runs.
  • Removed or unavailable listings may stop resolving.

The Actor extracts public source claims; it does not independently verify property ownership, price accuracy, or availability.

This Actor accesses public pages and does not bypass login controls. Web scraping legality depends on your jurisdiction, purpose, volume, and handling of personal data.

Use the data responsibly:

  • follow applicable laws and contractual obligations,
  • avoid collecting data you do not need,
  • do not use contact data for spam or harassment,
  • respect intellectual-property and database rights,
  • apply suitable retention and access controls.

You are responsible for ensuring your use case is lawful.

Troubleshooting

Why did the run reject my URL?

Only aqarmap.com.eg sale searches, rent searches, and numeric listing paths are accepted. Copy the full URL from Aqarmap and ensure it contains /for-sale/, /for-rent/, or /listing/{id}.

Why is a field missing?

Aqarmap does not show every attribute for every property. Enable detail enrichment for the richest public record. Optional unavailable fields are omitted rather than returned as misleading values.

Why did pagination stop early?

The Actor stops when it reaches maxItems, maxPagesPerSearch, or a page with no new cards. Increase the relevant limit only after confirming the source search contains more inventory.

Why am I seeing request failures?

First rerun with a small limit. If the issue is regional or rate-related, enable a datacenter Apify Proxy. Inspect run logs for the exact URL and HTTP response before increasing retries or scale.

Frequently asked questions

Can I scrape both sale and rental listings?

Yes. Add any combination of supported Aqarmap Egypt sale and rent search URLs. The transactionType field distinguishes the records.

Can I scrape a list of exact properties?

Yes. Add multiple Aqarmap listing URLs to startUrls; the global listing limit and deduplication still apply.

Does the Actor extract phone numbers?

Only anonymously visible context is in scope. Aqarmap may gate phone-number reveal behind account actions, so phone numbers are not promised.

Can I export to Excel?

Yes. Open the default dataset after a run and select Excel, CSV, JSON, XML, or RSS.

Can I schedule the scraper?

Yes. Use an Apify schedule and keep the same search input for repeatable inventory snapshots.

Does it need a browser?

No. The Actor uses efficient HTTP requests and parses structured public page data.

Explore other Automation Lab property-data tools:

Choose a source-specific Actor when you need the portal's native identifiers, prices, and property attributes.

Support

If a valid public Aqarmap sale, rent, or listing URL fails, open an issue from the Actor page.

Include:

  • the input URL,
  • the run ID,
  • whether detail enrichment was enabled,
  • the expected listing count or missing field,
  • a short description of what you observed.

Do not include passwords, private account data, or unnecessary personal information.