Returns ScrapedData based on the Schemas requested
The list of Schema generated from the list of Schema factories are processed from left to right,
meaning that the ones closer to the beginning of the list get precedence over those towards the end.
In fact, if an earlier schema successfully extracts data, then later schemas may not even be used.
- If the url is invalide, returns an illegal argument exception
- If the url is for an image, returns immediately with links to the image