Zillow Scraper API
The Zillow Scraper API allows developers to Zillow Search Results in real-time. It can be easily accessed by requesting at the following endpoint: api.scrapingdog.com/yelp.
Parameters
Parameters
Description
api_key required
This is your API key.
url required
Type: String
The Zillow API URL you want to target.
API Example
curl "https://api.scrapingdog.com/zillow?api_key=APIKEY&url=https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/"
import requests
import json
url = "https://api.scrapingdog.com/zillow"
api_key = "APIKEY"
url = "https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/"
# Set up the parameters
params = {"api_key": api_key, "url": url}
# Make the HTTP GET request
response = requests.get(url, params=params)
# Check if the request was successful (status code 200)
if response.status_code == 200:
# Parse the JSON content
json_response = response.json()
print(json_response)
else:
print(f"Error: {response.status_code}")
print(response.text)
const axios = require('axios');
const apiUrl = 'https://api.scrapingdog.com/zillow';
const apiKey = 'APIKEY';
const jobSearchUrl = 'https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/';
// Set up the parameters
const params = { api_key: apiKey, url: url};
// Make the HTTP GET request
axios.get(apiUrl, { params })
.then(response => {
// Check if the request was successful (status code 200)
if (response.status === 200) {
// Parse the JSON content
const jsonResponse = response.data;
console.log('JSON Response:');
console.log(JSON.stringify(jsonResponse, null, 2)); // Pretty print the JSON
} else {
console.error(`Error: ${response.status}`);
console.error(response.data);
}
})
.catch(error => {
console.error('Error making the request:', error.message);
});
<?php
$apiUrl = 'https://api.scrapingdog.com/zillow';
$apiKey = 'APIKEY';
$url= 'https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/';
// Set up the parameters
$params = [
'api_key' => $apiKey,
'url' => $url,
];
// Build the URL with parameters
$url = $apiUrl . '?' . http_build_query($params);
// Initialize cURL session
$ch = curl_init();
// Set cURL options
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Make the HTTP GET request
$response = curl_exec($ch);
// Check for cURL errors
if (curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
} else {
// Decode the JSON response
$jsonResponse = json_decode($response, true);
// Check if the request was successful (status code 200)
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpCode === 200) {
echo 'JSON Response:' . PHP_EOL;
echo json_encode($jsonResponse, JSON_PRETTY_PRINT) . PHP_EOL;
} else {
echo 'Error: ' . $httpCode . PHP_EOL;
echo $response . PHP_EOL;
}
}
// Close cURL session
curl_close($ch);
?>
require 'net/http'
require 'uri'
require 'json'
api_url = 'https://api.scrapingdog.com/zillow'
api_key = 'APIKEY'
url = 'https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/'
# Set up the parameters
params = {
'api_key' => api_key,
'url' => url
}
# Build the URL with parameters
url = URI.parse(api_url)
url.query = URI.encode_www_form(params)
# Make the HTTP GET request
response = Net::HTTP.get_response(url)
# Check if the request was successful (status code 200)
if response.code.to_i == 200
# Parse the JSON response
json_response = JSON.parse(response.body)
puts 'JSON Response:'
puts JSON.pretty_generate(json_response)
else
puts "Error: #{response.code}"
puts response.body
end
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class ScrapingDogExample {
public static void main(String[] args) {
String apiUrl = "https://api.scrapingdog.com/zillow";
String apiKey = "APIKEY";
String url = "https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/";
try {
// Set up the parameters
String queryParams = "api_key=" + apiKey + "&url=" + url;
// Build the URL with parameters
URL url = new URL(apiUrl + "?" + queryParams);
// Open the connection
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// Set the request method to GET
connection.setRequestMethod("GET");
// Get the response code
int responseCode = connection.getResponseCode();
// Check if the request was successful (status code 200)
if (responseCode == HttpURLConnection.HTTP_OK) {
// Read the response
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
StringBuilder response = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
// Print the JSON response
System.out.println("JSON Response:");
System.out.println(response.toString());
} else {
// Print the error code and response
System.err.println("Error: " + responseCode);
BufferedReader errorReader = new BufferedReader(new InputStreamReader(connection.getErrorStream()));
String line;
while ((line = errorReader.readLine()) != null) {
System.err.println(line);
}
errorReader.close();
}
// Close the connection
connection.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}
using System;
using System.Net.Http;
using System.Threading.Tasks;
public class ScrapingDogExample
{
public static async Task Main(string[] args)
{
string apiUrl = "https://api.scrapingdog.com/zillow";
string apiKey = "APIKEY";
string url = "https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/";
try
{
// Set up the parameters
string queryParams = $"api_key={apiKey}&url={url}";
// Build the URL with parameters
string fullUrl = $"{apiUrl}?{queryParams}";
// Create an instance of HttpClient
using (HttpClient client = new HttpClient())
{
// Send a GET request to the URL
HttpResponseMessage response = await client.GetAsync(fullUrl);
// Check if the request was successful (status code 200)
if (response.IsSuccessStatusCode)
{
// Read the response content
string jsonResponse = await response.Content.ReadAsStringAsync();
// Print the JSON response
Console.WriteLine("JSON Response:");
Console.WriteLine(jsonResponse);
}
else
{
// Print the error code and response
Console.WriteLine($"Error: {response.StatusCode}");
string errorResponse = await response.Content.ReadAsStringAsync();
Console.WriteLine(errorResponse);
}
}
}
catch (Exception e)
{
Console.WriteLine($"Exception: {e.Message}");
}
}
}
Response
{
"zillow_listings": [
{
"zpid": "30777487",
"id": "30777487",
"rawHomeStatusCd": "ForSale",
"marketingStatusSimplifiedCd": "For Sale by Agent",
"imgSrc": "https://photos.zillowstatic.com/fp/ac76b7865e238c66a762a77d32ec73c7-p_e.jpg",
"hasImage": true,
"detailUrl": "https://www.zillow.com/homedetails/1264-E-102nd-St-Brooklyn-NY-11236/30777487_zpid/",
"statusType": "FOR_SALE",
"statusText": "House for sale",
"countryCurrency": "$",
"price": "$677,000",
"unformattedPrice": 677000,
"address": "1264 E 102nd Street, Canarsie, NY 11236",
"addressStreet": "1264 E 102nd Street",
"addressCity": "Brooklyn",
"addressState": "NY",
"addressZipcode": "11236",
"isUndisclosedAddress": false,
"beds": 3,
"baths": 2,
"latLong": {
"latitude": 40.639812,
"longitude": -73.8903
},
"isZillowOwned": false,
"flexFieldText": "3 days on Zillow",
"flexFieldType": "daysOnZillow",
"hdpData": {
"homeInfo": {
"zpid": 30777487,
"streetAddress": "1264 E 102nd Street",
"zipcode": "11236",
"city": "Brooklyn",
"state": "NY",
"latitude": 40.639812,
"longitude": -73.8903,
"price": 677000,
"bathrooms": 2,
"bedrooms": 3,
"homeType": "SINGLE_FAMILY",
"homeStatus": "FOR_SALE",
"daysOnZillow": 3,
"isFeatured": false,
"shouldHighlight": false,
"zestimate": 715200,
"rentZestimate": 3721,
"listing_sub_type": {
"is_FSBA": true
},
"isUnmappable": false,
"isPreforeclosureAuction": false,
"homeStatusForHDP": "FOR_SALE",
"priceForHDP": 677000,
"timeOnZillow": 325555000,
"isNonOwnerOccupied": true,
"isPremierBuilder": false,
"isZillowOwned": false,
"currency": "USD",
"country": "USA",
"taxAssessedValue": 734000,
"lotAreaValue": 4000,
"lotAreaUnit": "sqft",
"isShowcaseListing": false
}
},
"isSaved": false,
"isUserClaimingOwner": false,
"isUserConfirmedClaim": false,
"pgapt": "ForSale",
"sgapt": "For Sale (Broker)",
"zestimate": 715200,
"shouldShowZestimateAsPrice": false,
"has3DModel": false,
"hasVideo": false,
"isHomeRec": false,
"hasAdditionalAttributions": true,
"isFeaturedListing": false,
"isShowcaseListing": false,
"list": true,
"relaxed": false,
"info3String": "https://photos.zillowstatic.com/fp/4e66a55bd37a412d002fb678e0dbded9-zillow_web_48_23.jpg",
"brokerName": "Listing by: Keller Williams Legendary",
"carouselPhotos": [
{
"url": "https://photos.zillowstatic.com/fp/ac76b7865e238c66a762a77d32ec73c7-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/d209ed5c59d3bdfaccf0d01d828f56a5-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/7796feccdf86fc421cc6297143e105b7-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/cd088bade978324f4b18106225f31ab2-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/3e0148bca4b196eeca26aa1d9f40801f-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/9f5d53ffdba90fc293e89d7f86d4a209-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/61babbd5e3e060bea91eeb83da36396b-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/8d90e5cdc9cac10a00a27770b0798cdb-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/bc14ead3ed00ac561b79185cf4bb774a-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/7992a681f6ff17297f7fedafc75799a7-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/63c39e8411678c60b8fd217108485539-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/cc2277d76c43f8679c61e6d2adc08fba-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/8831d5345385ddf251c1eed931b292a9-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/ba222b58a0dd9fe75077de86eb897327-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/e3ef4baa04952020fe05a68f09765a36-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/416107e9f5af797d16930e38c521d883-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/5b57c98d0033ded11e08b76271c31664-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/aa76c19b031703602edb7212c2ae6b30-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/8e7f1575d47a3238c43dbc06b8034464-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/ffd69321f1a601ee27cd1b575009fd39-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/76c52fe8061380a06615ed5dfd67445d-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/b2d5b7a8811ac750e49e998366cbba89-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/1d5efa1ae9095bef271ab19299523024-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/eccd8d309157023c62c290a2fa4cc1f3-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/464498283c83331d0c1caea947682875-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/653df121e564627e2e9fcda4e58c6d5f-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/6842c15f5a61caecd03009a22c393138-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/04c0d0b1dc56223277fc3ac1800d90ed-p_e.jpg"
},
{
"url": "https://photos.zillowstatic.com/fp/e4e3bef4be49a033ff7850c706e03812-p_e.jpg"
}
]
},
........
Last updated