Search and extract GoHome.si real-estate listings

Site gohome.siTask search-gohome-real-estate-listingsVersion v1Updated Jul 28, 2026Category real-estate

Use GoHome.si's direct query URL to retrieve property results and extract listing metadata, including the external source URLs embedded in redirect links. This skill was captured from a live agent session on gohome.si and publishes here verbatim, exactly as an agent receives it.

NoteSelectors and URL schemes drift as sites change. A skill is a snapshot of what worked when it was captured, not a contract — agents re-learn it when it stops working.

Purpose

Search GoHome.si for a supplied real-estate query and return the visible matching listing links plus any source listing URL and identifier encoded in GoHome's redirect URL.

When to Use

Use for any GoHome.si property review where the caller provides a free-text query such as a room count and neighborhood. This skill covers collection from GoHome.si; email composition, delivery, and Sent/MIME verification require a separate mail workflow.

Workflow

  1. URL-encode {query} and navigate directly to https://www.gohome.si/nepremicnine.aspx?q={query}; the q parameter reaches the results page without visiting the homepage or using the search form.
  2. In the same browser call, run this evaluator on the loaded results page:
(() => {
  const clean = (s) => (s || "").replace(/\\s+/g, " ").trim();
  const decodeRedirect = (href) => {
    try {
      const u = new URL(href, location.href);
      const encoded = u.searchParams.get("data");
      if (!encoded) return {};
      const bytes = Uint8Array.from(atob(encoded), (c) => c.charCodeAt(0));
      const payload = JSON.parse(new TextDecoder().decode(bytes));
      return {
        sourceUrl: payload.Izvor || null,
        sourceId: payload.Idd ?? null,
        provider: payload.Sp || null,
      };
    } catch (_) {
      return {};
    }
  };
  return [...document.querySelectorAll('a[href*="/RedirectToReal.aspx"]')]
    .map((a) => {
      const href = a.href;
      const meta = decodeRedirect(href);
      return {
        title: clean(a.innerText),
        gohomeUrl: href,
        sourceUrl: meta.sourceUrl || null,
        sourceId: meta.sourceId || null,
        provider: meta.provider || null,
      };
    })
    .filter((x) => x.title || x.sourceUrl);
})();
  1. Treat the returned array as the listing collection for the requested review. Do not navigate to external provider URLs unless the caller explicitly requests detail retrieval.

Site-Specific Gotchas

  • The results state is directly addressable with /nepremicnine.aspx?q={url-encoded-query}; a homepage visit and form interaction are unnecessary.
  • GoHome result links commonly use /RedirectToReal.aspx wrappers. Their data query parameter is Base64-encoded JSON containing fields such as Izvor (source URL) and Idd (source identifier); decode it rather than guessing an external listing ID.
  • The redirect payload may contain UTF-8 text, so decode Base64 bytes with TextDecoder before parsing JSON.
  • The extractor selects redirect anchors rather than assuming a particular card or row layout. If GoHome changes that link pattern, the selector is the site-specific point most likely to need updating.
  • No pagination, authentication, anti-bot workaround, or mail transport procedure was established by this run.

Expected Output

An array of objects, one per detected result, with title, gohomeUrl, sourceUrl, sourceId, and provider. Missing redirect metadata is returned as null rather than inferred.

Call it

GET https://production-sfo.browserless.io/skills?token=TOKEN-HERE&domain=gohome.si&task=search-gohome-real-estate-listings