- [Added] Add
:retriesoption - [Improved] Replace HTTPoison/Bypass HTTP handling and tests with Req/Req.Test.
- [Added] Add
:forceoption - [Added] Add
:scopeoption
- [Added] Allow multiple instances of Crawler sharing the same queue
- [Improved] Logger will now log entries as
debugorwarn
- [Added]
:storeoption, defaults tonilto save memory usage - [Added]
:max_pagesoption - [Added]
Crawler.running?/1to check whether Crawler is running - [Improved] The queue is being supervised now
- [Added]
Crawler.Store.all_urls/0to find all scraped URLs - [Improved] Memory usage optimisations
- [Improved] Documentation improvements (thanks @kianmeng)
- [Improved] Updated
flokiand other dependencies
- [Added]
:modifieroption - [Added]
:encode_urioption - [Improved] Varies small fixes and improvements
- [Added] Pause / resume / stop Crawler
- [Improved] Varies small fixes and improvements
- [Added]
:scraperoption to allow scraping content - [Improved] Varies small fixes and improvements
- [Improved]
Crawler.Store.DBnow stores theoptsmeta data - [Improved] Code documentation
- [Improved] Varies small fixes and improvements
- [Added]
:retrieroption to allow custom fetch retrying logic - [Added]
:url_filteroption to allow custom url filtering logic - [Improved] Parser is now more stable and skips unparsable files
- [Improved] Varies small fixes and improvements
- [Added]
:workersoption - [Added]
:intervaloption - [Added]
:timeoutoption - [Added]
:user_agentoption - [Added]
:save_tooption - [Added]
:assetsoption - [Added]
:parseroption to allow custom parsing logic - [Improved] Renamed
:max_levelsto:max_depths - [Improved] Varies small fixes and improvements
- [Added] A semi-functioning prototype
- [Added] Finished the very basic crawling function
- [Added]
:max_levelsoption