A library that enables programmatic interaction with daft.ie.
Project description
A library that enables programmatic interaction with daft.ie allowing you to retrieve properties by location, sale type, price and property type. daftlistings has been tested on Python 2.7 and Python 3.5.2
Install
daftlistings is available on the Python Package Index (PyPI) at https://pypi.python.org/pypi/daftlistings
You can install daftlistings using pip.
pip install daftlistings
Development Version
This library is under active development. Before new versions are pushed to PyPI, you can download the development version to avail of any new features.
git clone https://github.com/AnthonyBloomer/daftlistings.git cd daftlistings virtualenv env source env/bin/activate pip install -r requirements.txt
Examples
Get the current properties for rent in Dublin that are between €1000 and €1500 per month.
from daftlistings import Daft, CommercialType, SaleType, RentType
daft = Daft()
daft.set_county('Dublin City')
daft.set_area('Dublin 15')
daft.set_listing_type(RentType.APARTMENTS)
daft.set_min_price(1000)
daft.set_max_price(1500)
listings = daft.get_listings()
for listing in listings:
print(listing.get_formalised_address())
print(listing.get_daft_link())
Retrieve commercial office listings in Dublin.
daft.set_county("Dublin")
daft.set_listing_type(SaleType.COMMERCIAL)
daft.set_commercial_property_type(CommercialType.OFFICE)
listings = daft.get_listings()
for listing in listings:
print(listing.get_formalised_address())
print(listing.get_daft_link())
Get the current sale agreed prices for properties in Dublin.
daft.set_county('Dublin City')
daft.set_area('Dublin 15')
daft.set_listing_type(SaleType.PROPERTIES)
daft.set_min_price(1000)
daft.set_max_price(1500)
daft.set_sale_agreed(True)
listings = daft.get_listings()
for listing in listings:
print(listing.get_formalised_address())
print(listing.get_daft_link())
You can sort the listings by price, distance, upcoming viewing or date using the SortType object. The SortOrder object allows you to sort the listings descending or ascending. For example:
from daftlistings import SortOrder, SortType
daft.set_county('Dublin City')
daft.set_area('Dublin 15')
daft.set_listing_type(SaleType.PROPERTIES)
daft.set_min_price(150000)
daft.set_max_price(175000)
daft.set_sort_order(SortOrder.ASCENDING)
daft.set_sort_by(SortType.PRICE)
listings = daft.get_listings()
for listing in listings:
print(listing.get_formalised_address())
print(listing.get_daft_link())
print(listing.get_price())
Retrieve all properties for sale in Dublin 15. This example loops through each page of listings and prints the result.
offset = 0
pages = True
while pages:
daft.set_county('Dublin City')
daft.set_area('Dublin 15')
daft.set_listing_type(SaleType.PROPERTIES)
daft.set_offset(offset)
listings = daft.get_listings()
if not listings:
pages = False
for listing in listings:
print(listing.get_agent_url())
print(listing.get_price())
print(listing.get_formalised_address())
print(listing.get_daft_link())
print(' ')
offset += 10
Documentation
The current documentation can be viewed here: https://anthonybloomer.github.io/daftlistings/
The documentation has been created using mkdocs.
To update the documentation, clone the repository and edit docs/index.md
To view your changes, run:
mkdocs serve
To build the documentation, run:
mkdocs build
This will create a directory called site. Copy the site directory to a new directory and checkout gh-pages
git checkout gh-pages
Copy any changes from the site directory to this directory and push your changes.
Contributing
Contribute to daftlistings by suggesting new features or providing feedback / criticism. Pull requests are always welcome too so feel free to hack away.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for daftlistings-1.1.1-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23f0cbca5e79c6b1df66fe2c1830f6ba72fb415828b6aa556a9ba0f016066623 |
|
MD5 | 9dce42c4331a54bd0762d84636f0859b |
|
BLAKE2b-256 | b83b887e0d4fd2c140db4c0d65b900e8d263ab26fccf4099da2ff601bdb55240 |