Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsZillowSearch ¶
IsZillowSearch returns true if the URL is a Zillow search page (not a detail page, not a tool page).
func NewClient ¶ added in v0.1.5
func NewClient(opts Options) httpclient.Doer
NewClient builds an HTTP client from probe options. Follows up to 10 redirects so callers see the final response instead of 301/302 hops.
func NormalizeZillowSearchURL ¶
NormalizeZillowSearchURL rewrites a Zillow search URL to include searchQueryState in the query string. Zillow slug URLs like /san-francisco-ca/rentals/5-_beds/ do NOT filter data — only searchQueryState does.
If searchQueryState is already present, the URL is returned unchanged.
func SetBrowserHeaders ¶ added in v0.1.5
SetBrowserHeaders sets headers that match a real Chrome browser navigation. Cloudflare and similar WAFs check Sec-Fetch-* headers to distinguish real browsers from HTTP libraries.
Types ¶
type Options ¶
type Options struct {
ProxyURL string
Timeout time.Duration
Insecure bool // skip TLS certificate verification
Stealth bool // use TLS+HTTP/2 fingerprinting (Chrome profile)
}
Options configures probe behavior.
type Result ¶
type Result struct {
Schema *schema.Schema
Strategy string // best-ranked candidate strategy
Candidates []Candidate
HTMLBody string // If probe got HTML instead of JSON, the body is stored here for reuse
RequiresStealth bool // true if stealth TLS was needed to bypass anti-bot
}
Result contains what the probe found.