Skip to main content

A Python library used to scrape data from Redfin.com using the unofficial Stringray API.

Project description

Redfin Scraper

Description

A scalable Python library that leverages Redfin's unofficial Stringray API to quickly scrape real estate data.

One-Time Setup

Zip Code Database

A database of zip codes is required to search for City, State values

It is strongly recommended to download this free version in .csv format

The Config

Parameters for the RedfinScraper class can be controlled using an optional config.json file

Sample Config

Getting Started

Installation

pip3 install -U redfin-scraper

Import Module

from redfin_scraper import RedfinScraper

Initialize Module

scraper = RedfinScraper()

Using The Scraper

Required Setup

scraper.setup(zip_database_path:str, multiprocessing:bool=False)

zip_database_path: Binary path to the zip_code_database.csv

multiprocessing: Allow for multiprocessing

Activating The Scraper

scraper.scrape(city_states:list[str]=None, zip_codes:list[str], sold:bool=False, sale_period:str=None, lat_tuner:float=1.5, lon_tuner:float=1.5)

city_states: List of strings representing US cities formatted as "City, State"

zip_codes: List of strings representing US zip codes

sold: Select whether to scrape for-sale data (default) or sold data

sale_period: Must be selected whenever sold is True (1mo, 3mo, 6mo, 1yr, 3yr, 5yr)

lat_tuner: Represents # of standard deviations beyond the local latitude average that a zip code may exist within

lon_tuner: Represents # of standard deviations beyond the local longitude average that a zip code may exist within

Accessing Prior Scrapes

scraper.get_data(id:str)

id: IDs are indexed at 1 and increase in the format "D00#"

Appendix

Warnings

Multiprocessing can result in the consumption of all available CPU resources for an extended period of time

Unethical use of this library can result in Redfin taking disciplinary action against your IP address

Recommendations

Requests for large amounts of data (# of zip codes > 2,000) should be split into separate requests

The package.log file can be used to investigate unexpected results

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

redfin-scraper-0.2.2.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

redfin_scraper-0.2.2-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file redfin-scraper-0.2.2.tar.gz.

File metadata

  • Download URL: redfin-scraper-0.2.2.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.15

File hashes

Hashes for redfin-scraper-0.2.2.tar.gz
Algorithm Hash digest
SHA256 485cfdb638a001f4d6505e9b006e94d54af5cdb1f1997eec04afa46f746610ee
MD5 c017f9756dd3b5e2c511b976d73dd0d2
BLAKE2b-256 b4451f701903f620313e8651043e76801f2f736b53edf33d5a3df99a70332789

See more details on using hashes here.

File details

Details for the file redfin_scraper-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: redfin_scraper-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.15

File hashes

Hashes for redfin_scraper-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4a5a270921c120128941a91e4c901687bf008ce91b1e56359a1e188ef161f159
MD5 eabc68f903d9ad3d0dd423c4bed4fb81
BLAKE2b-256 18a1ae2f6ac8b10b09cf15d5ed4f73c275294a38a54cd8ea2f631376bc4673b2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page