Skip to main content

bieniciscraper

bieniciscraper is a Python package that allows you to scrape all real estate listings from any Bien'Ici URL 💛

Table

  1. Features
  2. Installation
  3. Usage
  4. Command-line Arguments
  5. Important Notes
  6. Disclaimer
  7. License

Features

  • All search URLs accepted
  • All listings collected
  • 13 attributes per listing
  • Limit the scope of scraping with the dynamic -l argument
  • Use any search URL with the -u dynamic argument
  • Export data with a customized file name using the -o dynamic argument
  • A resilient structure with the applied retry logic
  • Exports data in a structured .csv file format

Installation

$ pip3 install bieniciscraper

Note: The installation will also install the requests and retry external libraries.

Usage

$ bieniciscraper -u https://www.bienici.com/recherche/achat/france/chateau -l 10 -o demo.csv
going to page: 1
total results: 591
total results to scrape: 10
scraped: Château à vendre dans le lot avec dépendances et piscine.
scraped: Turenne Collonges la rouge - Demeure du XVIII siècle de 300 m² habitables sur une parcelle 1,9 ha à rénover entièrement
scraped: Manoir 15 pièces BIVIERS
scraped: Château du XVIème siècle et son parc au coeur de Lyon
scraped: Domaine 3 hectares proche Etretat
scraped: Vente Château 19 pièces
scraped: ANCIENNE DEPENDANCE DE L'ABBAYE DE CONQUES, CONSTITUEE D'UN CHATEAU
scraped: Château
scraped: Vente Château 8 pièces
scraped: DOMAINE D'EXCEPTION MONTS DU LYONNAIS
limit reached
csv written
elapsed: 1.20 s
~~ success
 _       _         _            
| |     | |       | |          
| | ___ | |__  ___| |_ __ __  
| |/ _ \| '_ \/ __| __/| '__|
| | (_) | |_) \__ \ |_ | |  
|_|\___/|_.__/|___/\__||_|  

Command-line Arguments

  • --url/-u: Specify your search URL.
  • --limit/-l: Limit the number of items you want to scrape.
  • --output/-o: Name the file in which data will be saved.

Important Notes

This Python script collects data from the internal Bien'Ici API. It can convert any Bien'Ici search URL into an available API request using advanced website-side JS reverse-engineering.

Beware: scraping is limited to 2,500 ads per search url. Bien'ici allows access to a maximum of 100 pages and then limits the display. To bypass this limitation, split your main search link into smaller scoped links:

For instance, to scrape all listings from Paris, divide by neighborhoods:
75001 all listings
75002 all listings
... and so on.

💇

Always ensure that your usage adheres to the legal constraints relevant in your jurisdiction. If you have package-related request, please contact us at: contact@lobstr.io.

Disclaimer

This tool is intended for educational use. Always ensure that scraping a website is within your legal rights before using this or any other scraping tool. Respect the robots.txt of websites and be conscious of ethical and legal considerations.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for bieniciscraper 1.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bieniciscraper 1.1.3
File Size Uploaded Provenance Actions
bieniciscraper-1.1.3.tar.gz 11.3 kB Without provenance Details for bieniciscraper-1.1.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for bieniciscraper 1.1.3
File Interpreter ABI Platform Actions
bieniciscraper-1.1.3-py3-none-any.whl Python 3 none any Details for bieniciscraper-1.1.3-py3-none-any.whl

Total release size: 23.2 kB

Release files / bieniciscraper-1.1.3.tar.gz

Download URL bieniciscraper-1.1.3.tar.gz
Size 11.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5f648568dcf09831a090bc26fb5ebc9ce3b6e22e583754dcdc33ca2076bd25f0
BLAKE2b-256 checksum
How to use checksums
9f2dbcf85d1f81319396bc8e08acd0ecc1ac44c96c68eac04b261d99f52d2804
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.6

Release files / bieniciscraper-1.1.3-py3-none-any.whl

Download URL bieniciscraper-1.1.3-py3-none-any.whl
Size 11.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
863960f34766e1d49aa01c3c0e1bd24fad59c2cb5ac072b4ed2c1f66612849d8
BLAKE2b-256 checksum
How to use checksums
26a0ecafbab1b9db713c086d590e63034b31d64c9a2e7c578391285943b1b22e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.6

Security for bieniciscraper 1.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page