#[non_exhaustive]pub struct ExtractSchema { /* private fields */ }Expand description
Declarative extraction schema.
Implementations§
Source§impl ExtractSchema
impl ExtractSchema
Sourcepub fn from_json(json: &str) -> Result<Self, SchemaError>
pub fn from_json(json: &str) -> Result<Self, SchemaError>
Parse a schema from JSON and validate every selector eagerly.
Sourcepub fn from_path(path: impl AsRef<Path>) -> Result<Self, SchemaError>
pub fn from_path(path: impl AsRef<Path>) -> Result<Self, SchemaError>
Load a schema from a JSON file on disk.
Sourcepub fn builder() -> SchemaBuilder
pub fn builder() -> SchemaBuilder
Start building a schema programmatically.
Sourcepub fn validate(&self) -> Result<(), SchemaError>
pub fn validate(&self) -> Result<(), SchemaError>
Validate every selector in the schema (including nested fields).
Sourcepub fn base_selector(&self) -> Option<&str>
pub fn base_selector(&self) -> Option<&str>
Repeated container selector, if any.
Sourcepub fn fields(&self) -> &[ExtractField]
pub fn fields(&self) -> &[ExtractField]
Fields defined in this schema.
Source§impl ExtractSchema
impl ExtractSchema
Sourcepub fn extract_from(&self, html: &str) -> Value
pub fn extract_from(&self, html: &str) -> Value
Apply this schema to HTML, returning structured JSON.
Trait Implementations§
Source§impl Clone for ExtractSchema
impl Clone for ExtractSchema
Source§fn clone(&self) -> ExtractSchema
fn clone(&self) -> ExtractSchema
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ExtractSchema
impl Debug for ExtractSchema
Source§impl<'de> Deserialize<'de> for ExtractSchema
impl<'de> Deserialize<'de> for ExtractSchema
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ExtractSchema
impl RefUnwindSafe for ExtractSchema
impl Send for ExtractSchema
impl Sync for ExtractSchema
impl Unpin for ExtractSchema
impl UnsafeUnpin for ExtractSchema
impl UnwindSafe for ExtractSchema
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
Mutably borrows from an owned value. Read more
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>,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
Creates a filterable data provider with the given name for debugging. Read more
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>
Converts
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>
Converts
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 moreSource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
Source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
Source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
Source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert