import requests from bs4 import BeautifulSoup import hashlib def scrape_vlw(): # Scrape the VLW website # https://vlw-eg.de/suchergebnisse?search-price-min=&search-price-max=&search-size-from=&search-size-to=&search-room-min=&search-room-max=&send=suchen url = "https://vlw-eg.de/suchergebnisse" parameter = { "search-price-min": "", "search-price-max": "", "search-size-from": "", "search-size-to": "", "search-room-min": "", "search-room-max": "", "senden": "suchen", } response = requests.get(url=url, params=parameter) soup = BeautifulSoup(response.content, 'html.parser') properties = [] # get div with class "estate-result-list" estate_result_list = soup.find("div", class_="estate-result-list") # get child div with class "estate-item no-border" estate_items = estate_result_list.find_all("div", class_="estate-item no-border") for estate in estate_items: #
Teichstr. 14
subtitle = estate.find("p", class_="size").text #61 m²
size = estate.find("p", class_="size").text # rooms3 Zimmer
rooms = estate.find("p", class_="rooms").text #682 € warm
warm_rent = estate.find("p", class_="price").text # availability01.03.2025
availability = estate.find("p", class_="date").text # link and id Details und Kontakt link = estate.find("a", class_="link link-typ-2")["href"] property_id = link.split("=")[1] hashID = f"{title}{subtitle}{rooms}{size}{warm_rent}{availability}" id = hashlib.sha256(hashID.encode('utf-8')).hexdigest() properties.append({ "id": property_id, "title": "Wogetra - "+ title, "subtitle": subtitle, "rooms": rooms, "size": size, "rent": "", "link": link, "abstract": "", "warm_rent": warm_rent, "availability": availability, "image_url": image_url, }) return properties