pub trait Scrapable {
type Config: Clone + Send + 'static;
// Required methods
fn new(config: &Self::Config) -> Result<Self>
where Self: Sized;
fn seed(&self) -> Seed;
fn accept(&self, url: &str, crawling_ctx: CrawlingContext) -> bool;
fn scrap(
&mut self,
page: String,
scraping_ctx: ScrapingContext,
) -> Result<()>;
// Provided method
fn finalizer(&mut self) { ... }
}