Facility: 029691

Hide & Seek Self Storage

Facility Information error
Facility ID
029691
Name
Hide & Seek Self Storage
URL
http://www.hideandseekselfstorage.com/
Address
415 W Ridge Pike, Limerick, PA 19468, USA, Limerick, Pennsylvania 19468
Platform
custom_facility_029691
Parser File
src/parsers/custom/facility_029691_parser.py
Last Scraped
Never
Created
2026-03-20 23:23:10.660695
Updated
2026-03-21 18:35:19.470657
Parser & Healing Diagnosis working
Parser Status
✓ Working
Status Reason
N/A
Last Healing Attempt
Not attempted
Parser Source (src/parsers/custom/facility_029691_parser.py)
"""Parser for Hide & Seek Self Storage."""

from __future__ import annotations

import re

from bs4 import BeautifulSoup

from src.parsers.base import BaseParser, ParseResult, UnitResult


class Facility029691Parser(BaseParser):
    """Extract storage units from Hide & Seek Self Storage."""

    platform = "custom_facility_029691"

    def parse(self, html: str, url: str = "") -> ParseResult:
        soup = BeautifulSoup(html, "lxml")
        result = ParseResult(platform=self.platform, parser_name=self.__class__.__name__)

        # Sizes are listed as <li> items under "Sizes of Units" heading
        sizes_heading = soup.find(string=re.compile(r"Sizes of Units", re.I))
        if sizes_heading:
            parent = sizes_heading.parent
            # Walk up to find the containing element, then find the adjacent ul
            for _ in range(5):
                if parent is None:
                    break
                next_ul = parent.find_next_sibling("ul")
                if next_ul is None:
                    next_ul = parent.find_next("ul")
                if next_ul:
                    for li in next_ul.find_all("li"):
                        text = li.get_text(strip=True)
                        if re.match(r"^\d+[xX]\d+$", text):
                            unit = UnitResult()
                            unit.size = text
                            w, ln, sq = self.normalize_size(text)
                            if w is not None:
                                unit.metadata = {"width": w, "length": ln, "sqft": sq}
                            result.units.append(unit)
                    break
                parent = parent.parent

        if not result.units:
            result.warnings.append("No units found on page")

        return result

Scrape Runs (1)

Run #595 Details

Status
failed
Parser Used
N/A
Platform Detected
N/A
Units Found
0
Stage Reached
fetch
Timestamp
2026-03-21 18:35:19.232689

Failures (1)

fetch WebDriverException website dns_resolution permanent

Message: unknown error: net::ERR_NAME_NOT_RESOLVED (Session info: chrome=146.0.7680.153) Stacktrace: #0 0x55d7291558ce <unknown> #1 0x55d728b131d2 <unknown> #2 0x55d728b0c874 <unknown> #3 0x55d728afe4cc <unknown> #4 0x55d728afff10 <unknown> #5 0x55d728afe812 <unknown> #6 0x55d728afe091 <unknown> #7 0x55d728afdfe9 <unknown> #8 0x55d728afc5e6 <unknown> #9 0x55d728afc8fa <unknown> #10 0x55d728b171b6 <unknown> #11 0x55d728ba2f04 <unknown> #12 0x55d728b82c42 <unknown> #13 0x55d728ba291f <unknown> #14 0x55d728b82a03 <unknown> #15 0x55d728b535d5 <unknown> #16 0x55d728b541c1 <unknown> #17 0x55d729119f10 <unknown> #18 0x55d72911d1d8 <unknown> #19 0x55d72911cc8a <unknown> #20 0x55d72911d645 <unknown> #21 0x55d7291098fb <unknown> #22 0x55d72911d9a7 <unknown> #23 0x55d7290f1836 <unknown> #24 0x55d7291428a5 <unknown> #25 0x55d729142a9c <unknown> #26 0x55d72915438a <unknown> #27 0x7f07f78931f5 <unknown>

Stack trace
Traceback (most recent call last):
  File "/app/src/pipeline.py", line 361, in _process_facility
    fetch_result = fetch_page(driver, url, snapshot_mgr, facility_id, **fetch_kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/src/fetcher/fetcher.py", line 125, in fetch_page
    driver.get(url)
  File "/app/.venv/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 466, in get
    self.execute(Command.GET, {"url": url})
  File "/app/.venv/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 446, in execute
    self.error_handler.check_response(response)
  File "/app/.venv/lib/python3.11/site-packages/selenium/webdriver/remote/errorhandler.py", line 232, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: net::ERR_NAME_NOT_RESOLVED
  (Session info: chrome=146.0.7680.153)
Stacktrace:
#0 0x55d7291558ce <unknown>
#1 0x55d728b131d2 <unknown>
#2 0x55d728b0c874 <unknown>
#3 0x55d728afe4cc <unknown>
#4 0x55d728afff10 <unknown>
#5 0x55d728afe812 <unknown>
#6 0x55d728afe091 <unknown>
#7 0x55d728afdfe9 <unknown>
#8 0x55d728afc5e6 <unknown>
#9 0x55d728afc8fa <unknown>
#10 0x55d728b171b6 <unknown>
#11 0x55d728ba2f04 <unknown>
#12 0x55d728b82c42 <unknown>
#13 0x55d728ba291f <unknown>
#14 0x55d728b82a03 <unknown>
#15 0x55d728b535d5 <unknown>
#16 0x55d728b541c1 <unknown>
#17 0x55d729119f10 <unknown>
#18 0x55d72911d1d8 <unknown>
#19 0x55d72911cc8a <unknown>
#20 0x55d72911d645 <unknown>
#21 0x55d7291098fb <unknown>
#22 0x55d72911d9a7 <unknown>
#23 0x55d7290f1836 <unknown>
#24 0x55d7291428a5 <unknown>
#25 0x55d729142a9c <unknown>
#26 0x55d72915438a <unknown>
#27 0x7f07f78931f5 <unknown>

All Failures for this Facility (1)

fetch WebDriverException website dns_resolution permanent Run #595 | 2026-03-21 18:35:19.458559

Message: unknown error: net::ERR_NAME_NOT_RESOLVED (Session info: chrome=146.0.7680.153) Stacktrace: #0 0x55d7291558ce <unknown> #1 0x55d728b131d2 <unknown> #2 0x55d728b0c874 <unknown> #3 0x55d728afe4cc <unknown> #4 0x55d728afff10 <unknown> #5 0x55d728afe812 <unknown> #6 0x55d728afe091 <unknown> #7 0x55d728afdfe9 <unknown> #8 0x55d728afc5e6 <unknown> #9 0x55d728afc8fa <unknown> #10 0x55d728b171b6 <unknown> #11 0x55d728ba2f04 <unknown> #12 0x55d728b82c42 <unknown> #13 0x55d728ba291f <unknown> #14 0x55d728b82a03 <unknown> #15 0x55d728b535d5 <unknown> #16 0x55d728b541c1 <unknown> #17 0x55d729119f10 <unknown> #18 0x55d72911d1d8 <unknown> #19 0x55d72911cc8a <unknown> #20 0x55d72911d645 <unknown> #21 0x55d7291098fb <unknown> #22 0x55d72911d9a7 <unknown> #23 0x55d7290f1836 <unknown> #24 0x55d7291428a5 <unknown> #25 0x55d729142a9c <unknown> #26 0x55d72915438a <unknown> #27 0x7f07f78931f5 <unknown>

Stack trace
Traceback (most recent call last):
  File "/app/src/pipeline.py", line 361, in _process_facility
    fetch_result = fetch_page(driver, url, snapshot_mgr, facility_id, **fetch_kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/src/fetcher/fetcher.py", line 125, in fetch_page
    driver.get(url)
  File "/app/.venv/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 466, in get
    self.execute(Command.GET, {"url": url})
  File "/app/.venv/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 446, in execute
    self.error_handler.check_response(response)
  File "/app/.venv/lib/python3.11/site-packages/selenium/webdriver/remote/errorhandler.py", line 232, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: net::ERR_NAME_NOT_RESOLVED
  (Session info: chrome=146.0.7680.153)
Stacktrace:
#0 0x55d7291558ce <unknown>
#1 0x55d728b131d2 <unknown>
#2 0x55d728b0c874 <unknown>
#3 0x55d728afe4cc <unknown>
#4 0x55d728afff10 <unknown>
#5 0x55d728afe812 <unknown>
#6 0x55d728afe091 <unknown>
#7 0x55d728afdfe9 <unknown>
#8 0x55d728afc5e6 <unknown>
#9 0x55d728afc8fa <unknown>
#10 0x55d728b171b6 <unknown>
#11 0x55d728ba2f04 <unknown>
#12 0x55d728b82c42 <unknown>
#13 0x55d728ba291f <unknown>
#14 0x55d728b82a03 <unknown>
#15 0x55d728b535d5 <unknown>
#16 0x55d728b541c1 <unknown>
#17 0x55d729119f10 <unknown>
#18 0x55d72911d1d8 <unknown>
#19 0x55d72911cc8a <unknown>
#20 0x55d72911d645 <unknown>
#21 0x55d7291098fb <unknown>
#22 0x55d72911d9a7 <unknown>
#23 0x55d7290f1836 <unknown>
#24 0x55d7291428a5 <unknown>
#25 0x55d729142a9c <unknown>
#26 0x55d72915438a <unknown>
#27 0x7f07f78931f5 <unknown>

← Back to dashboard