parent
5ea9a6f6b6
commit
d775540afd
|
@ -158,7 +158,8 @@ class RealtorScraper(Scraper):
|
||||||
else None,
|
else None,
|
||||||
address=self._parse_address(property_info, search_type="handle_listing"),
|
address=self._parse_address(property_info, search_type="handle_listing"),
|
||||||
description=Description(
|
description=Description(
|
||||||
primary_photo=property_info["primary_photo"].get("href", "").replace("s.jpg", "od-w480_h360_x2.webp?w=1080&q=75"),
|
primary_photo=property_info["primary_photo"].get("href", "").replace("s.jpg",
|
||||||
|
"od-w480_h360_x2.webp?w=1080&q=75"),
|
||||||
alt_photos=self.process_alt_photos(property_info.get("photos", [])),
|
alt_photos=self.process_alt_photos(property_info.get("photos", [])),
|
||||||
style=property_info["basic"].get("type", "").upper(),
|
style=property_info["basic"].get("type", "").upper(),
|
||||||
beds=property_info["basic"].get("beds"),
|
beds=property_info["basic"].get("beds"),
|
||||||
|
@ -385,10 +386,9 @@ class RealtorScraper(Scraper):
|
||||||
listing_type = ListingType.FOR_SALE if self.listing_type == ListingType.PENDING else self.listing_type
|
listing_type = ListingType.FOR_SALE if self.listing_type == ListingType.PENDING else self.listing_type
|
||||||
is_foreclosure = ""
|
is_foreclosure = ""
|
||||||
|
|
||||||
if 'foreclosure' in variables and variables['foreclosure'] == True:
|
if variables.get('foreclosure') is True:
|
||||||
is_foreclosure = "foreclosure: true"
|
is_foreclosure = "foreclosure: true"
|
||||||
|
elif variables.get('foreclosure') is False:
|
||||||
if 'foreclosure' in variables and variables['foreclosure'] == False:
|
|
||||||
is_foreclosure = "foreclosure: false"
|
is_foreclosure = "foreclosure: false"
|
||||||
|
|
||||||
if search_type == "comps": #: comps search, came from an address
|
if search_type == "comps": #: comps search, came from an address
|
||||||
|
@ -578,6 +578,9 @@ class RealtorScraper(Scraper):
|
||||||
return gql_results["properties"]
|
return gql_results["properties"]
|
||||||
|
|
||||||
else: #: general search, comps (radius)
|
else: #: general search, comps (radius)
|
||||||
|
if not location_info.get("centroid"):
|
||||||
|
return []
|
||||||
|
|
||||||
coordinates = list(location_info["centroid"].values())
|
coordinates = list(location_info["centroid"].values())
|
||||||
search_variables |= {
|
search_variables |= {
|
||||||
"coordinates": coordinates,
|
"coordinates": coordinates,
|
||||||
|
@ -692,7 +695,6 @@ class RealtorScraper(Scraper):
|
||||||
stories=description_data.get("stories"),
|
stories=description_data.get("stories"),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def calculate_days_on_mls(result: dict) -> Optional[int]:
|
def calculate_days_on_mls(result: dict) -> Optional[int]:
|
||||||
list_date_str = result.get("list_date")
|
list_date_str = result.get("list_date")
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[tool.poetry]
|
[tool.poetry]
|
||||||
name = "homeharvest"
|
name = "homeharvest"
|
||||||
version = "0.3.12"
|
version = "0.3.13"
|
||||||
description = "Real estate scraping library"
|
description = "Real estate scraping library"
|
||||||
authors = ["Zachary Hampton <zachary@bunsly.com>", "Cullen Watson <cullen@bunsly.com>"]
|
authors = ["Zachary Hampton <zachary@bunsly.com>", "Cullen Watson <cullen@bunsly.com>"]
|
||||||
homepage = "https://github.com/Bunsly/HomeHarvest"
|
homepage = "https://github.com/Bunsly/HomeHarvest"
|
||||||
|
|
|
@ -131,6 +131,15 @@ def test_realtor():
|
||||||
assert all([result is not None for result in results])
|
assert all([result is not None for result in results])
|
||||||
|
|
||||||
|
|
||||||
|
def test_realtor_city():
|
||||||
|
results = scrape_property(
|
||||||
|
location="Atlanta, GA",
|
||||||
|
listing_type="for_sale",
|
||||||
|
)
|
||||||
|
|
||||||
|
assert results is not None and len(results) > 0
|
||||||
|
|
||||||
|
|
||||||
def test_realtor_bad_address():
|
def test_realtor_bad_address():
|
||||||
bad_results = scrape_property(
|
bad_results = scrape_property(
|
||||||
location="abceefg ju098ot498hh9",
|
location="abceefg ju098ot498hh9",
|
||||||
|
|
Loading…
Reference in New Issue