Skip to main content

A Python wrapper for the Zoopla API

Project description

Build Status codecov

A python wrapper for the Zoopla API.

Zoopla has launched an open API to allow developers to create applications using hyper local data on 27m homes, over 1m sale and rental listings, and 15 years of sold price data.

Register for a user account and apply for an instant API key.

Browse the documentation to understand how to use the API and the specifications for the individual APIs.

Installation

$ pip install zoopla

Tests

Install the dev requirements:

$ pip install -r requirements.txt
Run py.test with your developer key (otherwise you won’t be able to hit the live
API upon which these tests depend).
$ py.test --api_key=<your-api-key> tests/ # pytest under Python 3+

Examples

Retrieve property listings for a given area.

from zoopla import Zoopla

zoopla = Zoopla(api_key='your_api_key')

search = zoopla.property_listings({
    'maximum_beds': 2,
    'page_size': 100,
    'listing_status': 'sale',
    'area': 'Blackley, Greater Manchester'
})

for result in search.listing:
    print(result.price)
    print(result.description)
    print(result.image_url)

Retrieve a list of house price estimates for the requested area.

zed_indices = zoopla.area_zed_indices({
    'area': 'Blackley, Greater Manchester',
    'output_type': 'area',
    'area_type': 'streets',
    'order': 'ascending',
    'page_number': 1,
    'page_size': 10
})

print(zed_indices.town)
print(zed_indices.results_url)

Generate a graph of values for an outcode over the previous 3 months and return the URL to the generated image.

area_graphs = zoopla.area_value_graphs({'area': 'SW11'})

print(area_graphs.average_values_graph_url)
print(area_graphs.value_trend_graph_url)

Retrieve the average sale price for houses in a particular area.

average = zoopla.average_area_sold_price({'area': 'SW11'})

print(average.average_sold_price_7year)
print(average.average_sold_price_5year)

Submit a viewing request to an agent regarding a particular listing.

session_id = zoopla.get_session_id()

arrange_viewing = zoopla.arrange_viewing({
    'session_id': session_id,
    'listing_id': 44863256,
    'name': 'Tester',
    'email': "zoopla_developer@mashery.com",
    'phone': '01010101',
    'phone_type': 'work',
    'best_time_to_call': 'anytime',
    'message': 'Hi, I seen your listing on zoopla.co.uk and I would love to arrange a viewing!'

})

Contributing

  • Fork the project and clone locally.

  • Create a new branch for what you’re going to work on.

  • Push to your origin repository.

  • Include tests and update documentation if necessary.

  • Create a new pull request in GitHub.

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

zoopla-0.6.3.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

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

zoopla-0.6.3-py2.py3-none-any.whl (9.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file zoopla-0.6.3.tar.gz.

File metadata

  • Download URL: zoopla-0.6.3.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for zoopla-0.6.3.tar.gz
Algorithm Hash digest
SHA256 c27d43873c63bcb95c0f1dec6f14886e93c46508b6fd9a449053b63a45510fcd
MD5 78f5f43f3b25ec684415d084e9f1c8e0
BLAKE2b-256 daae4eb3edc8864a5e28bed5b2d4b38d88fa62de1fe19a72ed0ae65f5e114f9d

See more details on using hashes here.

File details

Details for the file zoopla-0.6.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for zoopla-0.6.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6ebef528bb65046a3c4465b05bb1394d41fc85460fee430236e200603a1bfe94
MD5 bfcd494fb38cd3de2d9276f915008de5
BLAKE2b-256 8cf247f0db13685bb549daa299e76ec72a2014d902d8917ce3a1bc3ace3d6703

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