"""Search for professional ads on Leboncoin (example: real estate in Paris).""" import lbc def main() -> None: # Initialize the Leboncoin API client client = lbc.Client() # Define search location: Paris with a 10 km radius location = lbc.City( lat=48.85994982004764, lng=2.33801967847424, radius=10_000, # 10 km city="Paris" ) # Perform a search with specific filters result = client.search( text="maison", # Search for houses locations=[location], # Only in Paris page=1, limit=35, # Max results per page limit_alu=0, # No auto-suggestions sort=lbc.Sort.NEWEST, # Sort by newest ads ad_type=lbc.AdType.OFFER, # Only offers, not searches category=lbc.Category.IMMOBILIER, # Real estate category owner_type=lbc.OwnerType.ALL, # All types of sellers search_in_title_only=True, # Only search in titles square=(200, 400), # Surface between 200 and 400 m² price=[300_000, 700_000] # Price range in euros ) # Display only professional ads with their legal/professional data for ad in result.ads: if ad.user.pro: print( f"Store: {ad.user.pro.online_store_name} | " f"SIRET: {ad.user.pro.siret} | " f"Website: {ad.user.pro.website_url or 'N/A'}" ) if __name__ == "__main__": main()