You might be interested in this https://github.com/Jimut123/jimutmap. I have created a scraper to download any amount of map tiles by which you can create any amount of map data for training in Deep Neural Network architectures. Since this uses the Haversine formula for indexing the map tiles, you can download map tiles at any scale by passing a parameter known as zoom. You can also download large quantities of maps through multi-threading within seconds, so this is the best place for scraping any map place within seconds. You can even get road masks by modifying the code, so in essence you get everything for free.