pub enum CrawlEnhancement {
RenderUpgrade = 0,
PointerAssist = 1,
DnsGuard = 2,
GatewayReacquire = 3,
DnsHedge = 4,
}Expand description
The optional, on-by-default crawl enhancements. Each is behaviour a browser
with the same capability built in would otherwise duplicate, so each can be
turned off per-Website (via Configuration::with_enhancement) or
fleet-wide (via its SPIDER_CHROME_* env var) when the crawl is fronted by
such a browser.
The discriminant doubles as a dense index into EnhancementSettings, so
keep the variants contiguous and in sync with CrawlEnhancement::ALL.
Variants§
RenderUpgrade = 0
Re-fetch a thin HTTP response through a full browser render once the
SPA-shell upgrade score crosses its threshold. Env:
SPIDER_CHROME_RENDER_UPGRADE.
PointerAssist = 1
Clear a small interactive interstitial with a synthetic in-page pointer
interaction. Env: SPIDER_CHROME_POINTER_ASSIST.
DnsGuard = 2
Short-circuit chrome navigation for a host already cached as
unresolvable. Env: SPIDER_CHROME_DNS_GUARD.
GatewayReacquire = 3
Re-acquire a browser/gateway connection within the same request when the
active one dies mid-flight. Env: SPIDER_CHROME_REACQUIRE.
DnsHedge = 4
Race a local-DNS probe against chrome navigation to fail unresolvable
hosts fast. Env: SPIDER_CHROME_HEDGE_DNS_DELAY_MS (0 disables).
Implementations§
Trait Implementations§
Source§impl Clone for CrawlEnhancement
impl Clone for CrawlEnhancement
Source§fn clone(&self) -> CrawlEnhancement
fn clone(&self) -> CrawlEnhancement
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for CrawlEnhancement
Source§impl Debug for CrawlEnhancement
impl Debug for CrawlEnhancement
Source§impl<'de> Deserialize<'de> for CrawlEnhancement
impl<'de> Deserialize<'de> for CrawlEnhancement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for CrawlEnhancement
Source§impl PartialEq for CrawlEnhancement
impl PartialEq for CrawlEnhancement
Source§impl Serialize for CrawlEnhancement
impl Serialize for CrawlEnhancement
impl StructuralPartialEq for CrawlEnhancement
Auto Trait Implementations§
impl Freeze for CrawlEnhancement
impl RefUnwindSafe for CrawlEnhancement
impl Send for CrawlEnhancement
impl Sync for CrawlEnhancement
impl Unpin for CrawlEnhancement
impl UnsafeUnpin for CrawlEnhancement
impl UnwindSafe for CrawlEnhancement
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more