1use scraper::error::SelectorErrorKind;
2
3pub type Result<T, E = ManabaError> = core::result::Result<T, E>;
4
5#[derive(thiserror::Error, Debug)]
6pub enum ManabaError {
7 #[error("Failed to parse HTML body: {0}")]
8 SendRequestError(reqwest::Error),
9
10 #[error("Failed to parse HTML body{0}")]
11 HtmlBodyParseError(reqwest::Error),
12
13 #[error("Cookie is invalid")]
14 InvalidCookie,
15
16 #[error("Failed to load Cookie: {0}")]
17 LoadCookie(String),
18
19 #[error("Failed to scrape html: {0}")]
20 ScrapeError(String),
21}
22
23impl From<SelectorErrorKind<'_>> for ManabaError {
24 fn from(value: SelectorErrorKind) -> Self {
25 ManabaError::ScrapeError(value.to_string())
26 }
27}