crawlchain-0.1.1.4: src/Network/CrawlChain/CrawlDirective.hs
module Network.CrawlChain.CrawlDirective where
import Network.CrawlChain.CrawlAction
import Network.CrawlChain.CrawlResult
data CrawlDirective =
SimpleDirective (String -> [CrawlAction]) -- | access content to find absolute follow-up urls
| RelativeDirective (String -> [CrawlAction]) -- | as simple, but found relative urls are completed
| FollowUpDirective (CrawlResult -> [CrawlAction]) -- | as simple, but with access to complete result
| DelayDirective Int CrawlDirective -- | wait additional seconds before executing
| RetryDirective Int CrawlDirective -- | if given directive yields no results use add. retries
| AlternativeDirective CrawlDirective CrawlDirective -- | fallback to second argument if first yields no results
| RestartChainDirective (CrawlAction, CrawlDirective)-- | the possibility to start a new chain (when using alternative)
| DirectiveSequence [CrawlDirective] -- | chaining of directives