Zillow Search Scraper avatar
Zillow Search Scraper

Pricing

$1.00 / 1,000 results

Go to Store
Zillow Search Scraper

Zillow Search Scraper

Developed by

axly

axly

Maintained by Community

Zillow Search Scraper Scrapes Zillow property listings by location. Supports For Sale, For Rent, and Sold searches. Inputs: - query: Location ("New York, NY") - searchType: "For Sale", "For Rent", or "Sold" Outputs property data in JSON including price, address, beds/baths, status, and listing ID.

0.0 (0)

Pricing

$1.00 / 1,000 results

1

Total users

4

Monthly users

3

Runs succeeded

>99%

Last modified

16 days ago

This Apify Actor scrapes property listings from Zillow based on a location search query. It supports searching properties that are For Sale, For Rent, or have been Sold.

Features

  • Search properties by location query (e.g. city names, addresses)
  • Filter by listing type (For Sale, For Rent, Sold)
  • Get detailed property information
  • Handles pagination automatically
  • Robust error handling and retry mechanisms
  • Bypasses Zillow's anti-scraping protections

Installation

Prerequisites

  • Python 3.9+
  • Apify CLI (optional, for local development)

Deployment to Apify

  1. Log in to your Apify account
  2. Create a new Actor
  3. Deploy this code to the Actor
  4. Configure the Actor's input

Input Parameters

The Actor accepts the following input parameters:

ParameterTypeDescriptionDefault
queryStringLocation to search (e.g., 'New York, NY')"New York, NY"
homeStatusesStringListing status to include (select one). Options: newConstruction, foreclosure, comingSoon, fsbo, fsba, auction, forRent, recentlySold"newConstruction"
minPriceIntegerMinimum price in USD-
maxPriceIntegerMaximum price in USD-
minBedroomsIntegerMinimum number of bedrooms-
maxBedroomsIntegerMaximum number of bedrooms-
minBathroomsIntegerMinimum number of bathrooms-
maxHoaFeesIntegerMaximum HOA fees per month in USD-
homeTypesArrayProperty types. Options: singleFamily, multiFamily, condo, manufactured, land, townhome, apartment-
includeNoHoaDataBooleanInclude homes with no HOA datatrue
sortOrderStringSort order: recentlyChanged, relevance, priceLowToHigh, priceHighToLow"recentlyChanged"
maxResultsIntegerMaximum number of results to return500

Output

Sample output

{
"property": {
"zpid": 2057430830,
"location": {
"latitude": 37.74573,
"longitude": -122.47662
},
"address": {
"streetAddress": "2256 20th Ave #A",
"zipcode": "94116",
"city": "San Francisco",
"state": "CA",
"buildingId": 2082971133
},
"media": {
"propertyPhotoLinks": {
"highResolutionLink": "https://photos.zillowstatic.com/fp/7fb5cc0d6ed64f744cf80e1d5907ecbb-p_f.jpg"
},
"thirdPartyPhotoLinks": {
"streetViewLink": "https://maps.googleapis.com/maps/api/streetview?size=1280x256&location=37.745731353759766,-122.47662353515625&key=AIzaSyBWYJWCA8FNMQvSe_k3LKfDGJaEgdKwsco&signature=g4i8FaLhoo0Ns5Ux5NNzm1rByjY=",
"satelliteLink": "https://maps.googleapis.com/maps/api/staticmap?mobile=false&sensor=true&maptype=satellite&size=1280x512&zoom=19&center=37.745731353759766,-122.47662353515625&key=AIzaSyBWYJWCA8FNMQvSe_k3LKfDGJaEgdKwsco&signature=vIMYpPN6GsyyZi4fMDeR8jGVxg0=",
"streetViewMetadataLink": "https://maps.googleapis.com/maps/api/streetview/metadata?location=37.745731353759766,-122.47662353515625&key=AIzaSyBWYJWCA8FNMQvSe_k3LKfDGJaEgdKwsco&signature=1umhv61ahkKyPD3U4YPpf-49mVs="
},
"hasVRModel": false,
"hasVideos": false,
"hasApprovedThirdPartyVirtualTour": false,
"allPropertyPhotos": {
"highResolution": [
"https://photos.zillowstatic.com/fp/7fb5cc0d6ed64f744cf80e1d5907ecbb-p_f.jpg",
"https://photos.zillowstatic.com/fp/243f899a4696ec0d6725c5604708c3e3-p_f.jpg",
"https://photos.zillowstatic.com/fp/2d559621800ecafc96630537061ad6c7-p_f.jpg",
"https://photos.zillowstatic.com/fp/cb7464b60d3362423f40371e114fb541-p_f.jpg",
"https://photos.zillowstatic.com/fp/121a9268eeb1aaaeee94b9f94aeec9ad-p_f.jpg",
"https://photos.zillowstatic.com/fp/5867ab8a369658ebf132aa351950caec-p_f.jpg",
"https://photos.zillowstatic.com/fp/5e0a1c153807a9b757e9445082bc3d7d-p_f.jpg",
"https://photos.zillowstatic.com/fp/cf0c3954e31995204c6d495e43532a5a-p_f.jpg",
"https://photos.zillowstatic.com/fp/eca26db691c6d06b35fb51ba2a505a6e-p_f.jpg"
]
}
},
"isFeatured": false,
"isShowcaseListing": false,
"rental": {
"areApplicationsAccepted": true,
"isRoomForRent": false,
"isBuildToRent": false,
"isRentByBed": false,
"marketingTreatments": [
"zillowRentalManager"
]
},
"currency": "usd",
"country": "usa",
"groupType": "apartmentComplex",
"listingDateTimeOnZillow": 1742502731012,
"bestGuessTimeZone": "America/Los_Angeles",
"isUnmappable": false,
"listCardRecommendation": {
"flexFieldRecommendations": [
{
"displayString": "16 hours ago",
"flexFieldType": "timeOnInfo",
"contentType": "timeOnInfo"
},
{
"displayString": "Apply instantly",
"flexFieldType": "unknown",
"contentType": "frZillowApplication"
}
],
"ctaRecommendations": [
{
"displayString": "Request a tour",
"contentType": "REQUEST_A_TOUR"
}
]
},
"bathrooms": 1.0,
"bedrooms": 2,
"livingArea": 400,
"propertyType": "townhome",
"listing": {
"listingStatus": "forRent",
"providerListingID": "1c62p4frzp5g7",
"listingSubType": {}
},
"daysOnZillow": 0,
"isPreforeclosureAuction": false,
"price": {
"value": 2195,
"pricePerSquareFoot": 5
},
"estimates": {
"zestimate": 609800,
"rentZestimate": 1847
},
"zillowOwnedProperty": {
"isZillowOwned": false
},
"hdpView": {
"listingStatus": "forRent",
"price": 2195,
"hdpUrl": "/homedetail/MobileAppHDPShopperPlatformServicePage.htm?fromApp=true&p=android&variant=FOR_RENT#zpid=2057430830&homeDetailsVariant=FOR_RENT&webviewLayout=doubleScroll&showFactsAndFeatures=true&fromApp=true&gmaps=true&streetview=true"
},
"region": {},
"personalizedResult": {
"isViewed": false
},
"propertyDisplayRules": {
"canShowAddress": true,
"canShowOnMap": true,
"agent": {},
"mls": {},
"builder": {},
"soldByOffice": {},
"listingCategory": "category2"
},
"ssid": 100066
},
"resultType": "property"
}

Usage

API Usage Example

const Apify = require('apify');
Apify.main(async () => {
const input = {
query: "San Francisco, CA",
};
const client = Apify.newClient();
const run = await client.actor("your-username/zillow-search-scraper").call(input);
// Process results
const dataset = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Found ${dataset.items.length} listings`);
});

Limitations

Acknowledgements